@charset "UTF-8";
/*  
 * style.css
*/
/*
	File Name   : var.scss
	Description : 変数用
*/
/*------------------------------------------------------*/
/*
	File Name   : webfont.scss
	Description : webfont用
*/
/*------------------------------------------------------*/
/* web font */
/*
@import url('https://fonts.googleapis.com/css?family=Roboto:400,500,700,900');
*/
/*
font-family: 'Roboto', sans-serif;
font-weight:700;
*/
/* Eric Meyer’s “Reset CSS” 2.0
------------------------------------------------------------------------------- */
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, summary, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

sup, sub {
  margin: 0;
  padding: 0;
  border: 0; }
sub{vertical-align: bottom;}
sup{vertical-align: super;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"],
button {
  border-radius: 0;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer; }

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

input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px; }

input,
button,
textarea,
select {
  font-family: "メイリオ", Meiryo,'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',  Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"; }

/*
	File Name   : bootstrap-grid.scss
	Description : bootstrap-grid用
*/
/*------------------------------------------------------*/
.row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px; }

.justify-center {
  justify-content: center !important; }

.align-items-center {
  -ms-flex-align: center !important;
  align-items: center !important; }

.align-items-end {
  -ms-flex-align: end !important;
  align-items: flex-end !important; }

.no-gutters {
  margin-right: 0;
  margin-left: 0; }

.no-gutters > .col,
.no-gutters > [class*="col-"] {
  padding-right: 0;
  padding-left: 0; }

.col-1, .col-2, .col-2-5, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px; }

/* SP */
@media screen and (max-width: 767px) {
  .row {
    margin-right: -5px;
    margin-left: -5px; }

  .col-1, .col-2, .col-2-5, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
  .col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
  .col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
  .col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
  .col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
  .col-xl-auto {
    padding-right: 5px;
    padding-left: 5px; }

  /*-------------*/ }
.col {
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  -ms-flex-positive: 1;
  flex-grow: 1;
  max-width: 100%; }

.col-auto {
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: auto;
  max-width: none; }

.col-1 {
  -ms-flex: 0 0 8.333333%;
  flex: 0 0 8.333333%;
  max-width: 8.333333%; }

.col-2 {
  -ms-flex: 0 0 16.666667%;
  flex: 0 0 16.666667%;
  max-width: 16.666667%; }

.col-2-5 {
  -ms-flex: 0 0 18.000%;
  flex: 0 0 18.000%;
  max-width: 18.000%; }

.col-3 {
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  max-width: 25%; }

.col-4 {
  -ms-flex: 0 0 33.333333%;
  flex: 0 0 33.333333%;
  max-width: 33.333333%; }

.col-5 {
  -ms-flex: 0 0 41.666667%;
  flex: 0 0 41.666667%;
  max-width: 41.666667%; }

.col-6 {
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%; }

.col-7 {
  -ms-flex: 0 0 58.333333%;
  flex: 0 0 58.333333%;
  max-width: 58.333333%; }

.col-8 {
  -ms-flex: 0 0 66.666667%;
  flex: 0 0 66.666667%;
  max-width: 66.666667%; }

.col-9 {
  -ms-flex: 0 0 75%;
  flex: 0 0 75%;
  max-width: 75%; }

.col-10 {
  -ms-flex: 0 0 83.333333%;
  flex: 0 0 83.333333%;
  max-width: 83.333333%; }

.col-11 {
  -ms-flex: 0 0 91.666667%;
  flex: 0 0 91.666667%;
  max-width: 91.666667%; }

.col-12 {
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%; }

.order-1 {
  -ms-flex-order: 1;
  order: 1; }

.order-2 {
  -ms-flex-order: 2;
  order: 2; }

.order-3 {
  -ms-flex-order: 3;
  order: 3; }

.order-4 {
  -ms-flex-order: 4;
  order: 4; }

.order-5 {
  -ms-flex-order: 5;
  order: 5; }

.order-6 {
  -ms-flex-order: 6;
  order: 6; }

.order-7 {
  -ms-flex-order: 7;
  order: 7; }

.order-8 {
  -ms-flex-order: 8;
  order: 8; }

.order-9 {
  -ms-flex-order: 9;
  order: 9; }

.order-10 {
  -ms-flex-order: 10;
  order: 10; }

.order-11 {
  -ms-flex-order: 11;
  order: 11; }

.order-12 {
  -ms-flex-order: 12;
  order: 12; }

@media (min-width: 576px) {
  .col-sm {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%; }

  .col-sm-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: none; }

  .col-sm-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%; }

  .col-sm-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%; }

  .col-sm-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%; }

  .col-sm-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%; }

  .col-sm-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%; }

  .col-sm-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; }

  .col-sm-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%; }

  .col-sm-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%; }

  .col-sm-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%; }

  .col-sm-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%; }

  .col-sm-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%; }

  .col-sm-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%; }

  .order-sm-1 {
    -ms-flex-order: 1;
    order: 1; }

  .order-sm-2 {
    -ms-flex-order: 2;
    order: 2; }

  .order-sm-3 {
    -ms-flex-order: 3;
    order: 3; }

  .order-sm-4 {
    -ms-flex-order: 4;
    order: 4; }

  .order-sm-5 {
    -ms-flex-order: 5;
    order: 5; }

  .order-sm-6 {
    -ms-flex-order: 6;
    order: 6; }

  .order-sm-7 {
    -ms-flex-order: 7;
    order: 7; }

  .order-sm-8 {
    -ms-flex-order: 8;
    order: 8; }

  .order-sm-9 {
    -ms-flex-order: 9;
    order: 9; }

  .order-sm-10 {
    -ms-flex-order: 10;
    order: 10; }

  .order-sm-11 {
    -ms-flex-order: 11;
    order: 11; }

  .order-sm-12 {
    -ms-flex-order: 12;
    order: 12; } }
@media (min-width: 768px) {
  .col-md {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%; }

  .col-md-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: none; }

  .col-md-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%; }

  .col-md-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%; }

  .col-md-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%; }

  .col-md-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%; }

  .col-md-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%; }

  .col-md-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; }

  .col-md-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%; }

  .col-md-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%; }

  .col-md-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%; }

  .col-md-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%; }

  .col-md-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%; }

  .col-md-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%; }

  .order-md-1 {
    -ms-flex-order: 1;
    order: 1; }

  .order-md-2 {
    -ms-flex-order: 2;
    order: 2; }

  .order-md-3 {
    -ms-flex-order: 3;
    order: 3; }

  .order-md-4 {
    -ms-flex-order: 4;
    order: 4; }

  .order-md-5 {
    -ms-flex-order: 5;
    order: 5; }

  .order-md-6 {
    -ms-flex-order: 6;
    order: 6; }

  .order-md-7 {
    -ms-flex-order: 7;
    order: 7; }

  .order-md-8 {
    -ms-flex-order: 8;
    order: 8; }

  .order-md-9 {
    -ms-flex-order: 9;
    order: 9; }

  .order-md-10 {
    -ms-flex-order: 10;
    order: 10; }

  .order-md-11 {
    -ms-flex-order: 11;
    order: 11; }

  .order-md-12 {
    -ms-flex-order: 12;
    order: 12; } }
@media (min-width: 992px) {
  .col-lg {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%; }

  .col-lg-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: none; }

  .col-lg-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%; }

  .col-lg-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%; }

  .col-lg-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%; }

  .col-lg-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%; }

  .col-lg-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%; }

  .col-lg-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; }

  .col-lg-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%; }

  .col-lg-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%; }

  .col-lg-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%; }

  .col-lg-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%; }

  .col-lg-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%; }

  .col-lg-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%; }

  .order-lg-1 {
    -ms-flex-order: 1;
    order: 1; }

  .order-lg-2 {
    -ms-flex-order: 2;
    order: 2; }

  .order-lg-3 {
    -ms-flex-order: 3;
    order: 3; }

  .order-lg-4 {
    -ms-flex-order: 4;
    order: 4; }

  .order-lg-5 {
    -ms-flex-order: 5;
    order: 5; }

  .order-lg-6 {
    -ms-flex-order: 6;
    order: 6; }

  .order-lg-7 {
    -ms-flex-order: 7;
    order: 7; }

  .order-lg-8 {
    -ms-flex-order: 8;
    order: 8; }

  .order-lg-9 {
    -ms-flex-order: 9;
    order: 9; }

  .order-lg-10 {
    -ms-flex-order: 10;
    order: 10; }

  .order-lg-11 {
    -ms-flex-order: 11;
    order: 11; }

  .order-lg-12 {
    -ms-flex-order: 12;
    order: 12; } }
@media (min-width: 1200px) {
  .col-xl {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%; }

  .col-xl-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: none; }

  .col-xl-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%; }

  .col-xl-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%; }

  .col-xl-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%; }

  .col-xl-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%; }

  .col-xl-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%; }

  .col-xl-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; }

  .col-xl-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%; }

  .col-xl-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%; }

  .col-xl-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%; }

  .col-xl-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%; }

  .col-xl-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%; }

  .col-xl-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%; }

  .order-xl-1 {
    -ms-flex-order: 1;
    order: 1; }

  .order-xl-2 {
    -ms-flex-order: 2;
    order: 2; }

  .order-xl-3 {
    -ms-flex-order: 3;
    order: 3; }

  .order-xl-4 {
    -ms-flex-order: 4;
    order: 4; }

  .order-xl-5 {
    -ms-flex-order: 5;
    order: 5; }

  .order-xl-6 {
    -ms-flex-order: 6;
    order: 6; }

  .order-xl-7 {
    -ms-flex-order: 7;
    order: 7; }

  .order-xl-8 {
    -ms-flex-order: 8;
    order: 8; }

  .order-xl-9 {
    -ms-flex-order: 9;
    order: 9; }

  .order-xl-10 {
    -ms-flex-order: 10;
    order: 10; }

  .order-xl-11 {
    -ms-flex-order: 11;
    order: 11; }

  .order-xl-12 {
    -ms-flex-order: 12;
    order: 12; } }
/*
	File Name   : base.scss
	Description : 各ブロックのレイアウト 
*/
/* PC */
@media screen and (min-width: 768px) {
  /*-------------*/ }
/* SP */
@media screen and (max-width: 767px) {
  /*-------------*/ }
/* Body setting
------------------------------------------------------------------------------- */
body {
  color: #000;
  font-family: "メイリオ", Meiryo, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  line-height: 1.6;
  font-style: normal;
  overflow-y: auto;
  font-size: 0.9em; }

body > img {
  display: none; }

/* SP  */
@media screen and (max-width: 767px) {
  body {
    font-size: 14px;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "sans-serif"; }

  /*-------------*/ }
/* common style
------------------------------------------------------------------------------- */
a {
  text-decoration: none; }

#header-sp,
#footer-sp,
#footer-area,
#header-wrap *,
#header-sp-wrap *,
#footer_sp *,
#footer-area *,
#contents-wrap *,
.bread_link {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

/* Header animation
------------------------------------------------------------------------------- */
@keyframes fade-in {
  0% {
    display: none;
    opacity: 0; }
  1% {
    display: block;
    opacity: 0; }
  100% {
    display: block;
    opacity: 1; } }
@-moz-keyframes fade-in {
  0% {
    display: none;
    opacity: 0; }
  1% {
    display: block;
    opacity: 0; }
  100% {
    display: block;
    opacity: 1; } }
@-webkit-keyframes fade-in {
  0% {
    display: none;
    opacity: 0; }
  1% {
    display: block;
    opacity: 0; }
  100% {
    display: block;
    opacity: 1; } }
/* Header
------------------------------------------------------------------------------- */
#header-wrap {
  position: relative;
  z-index: 1000;
  height: 130px;
  margin-bottom: 0px;
  border-bottom: 1px solid #eeeeee;
  background: #fff; }

#header-area {
  /* position: relative; */
  position: static;
  top: -250px;
  z-index: 1001;
  overflow: visible;
  height: 129px;
  margin: 0 auto;
  padding-left: 40px;
  padding-right: 40px;
  max-width: 1250px;
  background: #fff;
  /**/
  -webkit-transition: 0.6s ease;
  transition: 0.6s ease; }

#header-area__inner {
  position: relative;
  padding-top: 80px;
  margin: 0 auto; }

#header-area__logo {
  position: absolute;
  top: 35px;
  left: 0px;
  z-index: 1; }
  #header-area__logo img {
    width: 215px;
    height: 35px; }

/* PC */
@media screen and (min-width: 1260px) {
  #header-area__logo {
    left: calc(50% - 585px); }

  /*-------------*/ }
#header-area__pc__lang {
  position: absolute;
  top: 30px;
  right: 110px;
  width: 390px;
  display: flex;
  justify-content: space-between; }
  #header-area__pc__lang ul {
    width: 160px;
    display: flex; }
    #header-area__pc__lang ul li {
      width: 50px; }
      #header-area__pc__lang ul li:nth-of-type(2) {
        width: 60px;
        margin: 0 5px; }
      #header-area__pc__lang ul li a {
        display: block;
        border-radius: 4px;
        background: #eceff1;
        line-height: 1;
        text-align: center;
        font-size: 12px;
        color: #546e7a;
        text-decoration: none !important;
        padding: 10px 5px; }
        #header-area__pc__lang ul li a.current, #header-area__pc__lang ul li a:hover {
          background: #053250;
          color: #fff; }
  #header-area__pc__lang form {
    position: relative;
    width: 200px;
    padding-bottom: 2px;
    border-bottom: 1px solid #eceff1; }
    #header-area__pc__lang form #header-area__pc__search-btn {
      position: absolute;
      top: 0px;
      right: 0px;
      border: none;
      outline: none;
      width: 20px;
      height: 32px;
      -webkit-appearance: button;
      -moz-appearance: button;
      appearance: button;
      background: url(/common/images/icon_search.svg) 50% 45% no-repeat;
      background-size: 18px 18px; }
    #header-area__pc__lang form #header-area__pc__search-text {
      width: 175px;
      color: #546e7a;
      padding: 0px;
      border: none;
      outline: none;
      line-height: 1.1;
      height: 32px;
      font-size: 14px;
      -webkit-appearance: button;
      -moz-appearance: button;
      appearance: button; }
    #header-area__pc__lang form #header-area__pc__search-text:focus:placeholder-shown {
      color: transparent; }
    #header-area__pc__lang form #header-area__pc__search-text:focus::-webkit-input-placeholder {
      color: transparent; }
    #header-area__pc__lang form #header-area__pc__search-text:focus::-moz-placeholder {
      color: transparent; }

#header-area__contact {
  position: absolute;
  top: 20px;
  right: -40px;
  z-index: 100; }
  #header-area__contact a {
    display: block;
    width: 120px;
    height: 109px;
    text-align: center;
    font-size: 14px;
    color: #fff !important;
    text-decoration: none !important;
    line-height: 1.1;
    padding-top: 46px;
    background: #fb8c00; }
    #header-area__contact a:hover {
      opacity: 0.7; }

#gnav-pc {
  position: relative;
  display: flex;
  justify-content: center;
  /*
  max-width: 1250px;
  */
  max-width: 1170px;
  margin: 0 auto;
  /* mega-menu-box */ }
  #gnav-pc > li {
    margin: 0 25px; }
    #gnav-pc > li > a {
      color: #212121;
      position: relative;
      display: block;
      height: 50px;
      line-height: 1.1;
      padding-top: 18px;
      white-space: nowrap; }
    #gnav-pc > li:hover > a::after {
      content: " ";
      position: absolute;
      top: 45px;
      left: 0;
      width: 100%;
      border-bottom: 5px solid #1958aa; }
    #gnav-pc > li:hover .mega-menu-box {
      opacity: 1;
      display: block;
      /**/
      -moz-animation-duration: 0.3s;
      -moz-animation-name: fade-in;
      -webkit-animation-duration: 0.3s;
      -webkit-animation-name: fade-in;
      animation-duration: 0.3s;
      animation-name: fade-in; }
    #gnav-pc > li.home {
      margin-left: 0; }
    #gnav-pc > li.recruit {
      margin-right: 0; }
    #gnav-pc > li.service > a, #gnav-pc > li.profile > a, #gnav-pc > li.development > a, #gnav-pc > li.csr > a, #gnav-pc > li.recruit > a {
      padding-right: 13px;
      background: url(/common/images/icon_arrow01_btm.png) 100% 50% no-repeat;
      background-size: 6px 5px; }
  #gnav-pc .mega-menu-box {
    opacity: 0;
    display: none;
    /**/
    position: absolute;
    top: 50px;
    left: -40px;
    z-index: 1002;
    width: calc(100% + 80px); }
    #gnav-pc .mega-menu-box .mega-menu-box__inner {
      margin-top: 1px;
      background: #fff;
      padding-left: 40px;
      padding-right: 40px; }
      #gnav-pc .mega-menu-box .mega-menu-box__inner > .row {
        margin-right: -40px; }
      #gnav-pc .mega-menu-box .mega-menu-box__inner .mega-menu-box__navi02 {
        margin-top: -10px;
        padding-right: 20px;
        padding-bottom: 20px; }
      #gnav-pc .mega-menu-box .mega-menu-box__inner ul {
        padding-top: 30px;
        padding-bottom: 10px; }
        #gnav-pc .mega-menu-box .mega-menu-box__inner ul li {
          margin-bottom: 30px;
          font-size: 16px; }
          #gnav-pc .mega-menu-box .mega-menu-box__inner ul li a {
            padding-right: 25px;
            text-decoration: underline;
            background: url(/common/images/icon_arrow_link.svg) 100% 48% no-repeat;
            background-size: 12px 12px; }
            #gnav-pc .mega-menu-box .mega-menu-box__inner ul li a:link, #gnav-pc .mega-menu-box .mega-menu-box__inner ul li a:visited {
              color: #053250; }
            #gnav-pc .mega-menu-box .mega-menu-box__inner ul li a:hover {
              color: #1958aa; }
      #gnav-pc .mega-menu-box .mega-menu-box__inner ul.mega-menu-box__navi01 li {
        background: url(/common/images/ttl_bg02.png) 0 50% no-repeat;
        padding-left: 15px;
        font-size: 20px; }
      #gnav-pc .mega-menu-box .mega-menu-box__inner dl dt {
        background: #eceff1;
        color: #546e7a;
        font-size: 16px;
        padding: 10px 10px 9px;
        line-height: 1; }
      #gnav-pc .mega-menu-box .mega-menu-box__inner dl dd {
        padding-left: 10px; }
        #gnav-pc .mega-menu-box .mega-menu-box__inner dl dd ul {
          padding-top: 20px; }
          #gnav-pc .mega-menu-box .mega-menu-box__inner dl dd ul li {
            font-size: 14px;
            margin-bottom: 10px; }
    #gnav-pc .mega-menu-box .mega-menu-box__inner-r {
      padding-top: 25px;
      padding-bottom: 20px;
      background: #f5f7f8; }
      #gnav-pc .mega-menu-box .mega-menu-box__inner-r figure {
        margin-bottom: 10px; }
      #gnav-pc .mega-menu-box .mega-menu-box__inner-r img {
        max-width: 100%; }
      #gnav-pc .mega-menu-box .mega-menu-box__inner-r p {
        font-size: 16px;
        margin-bottom: 15px; }
      #gnav-pc .mega-menu-box .mega-menu-box__inner-r div a {
        text-decoration: underline !important; }

.mega-menu-box a:link {
  color: #053250; }
.mega-menu-box a:visited {
  color: #8c5aa0; }
.mega-menu-box a:hover {
  color: #1958aa; }

#header-mega-menu__bg {
  display: none;
  /**/
  background: rgba(238, 238, 238, 0.95);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999; }

@media screen and (max-width: 995px) {
  #gnav-pc {
    justify-content: center;
    padding-right: 90px; } }
@media screen and (max-width: 920px) {
  #gnav-pc > li {
    margin: 0 15px; } }
@media screen and (max-width: 850px) {
  #gnav-pc > li {
    margin: 0 10px; }

  #header-area__pc__lang {
    right: 95px;
    width: 350px; }
    #header-area__pc__lang form {
      width: 175px; } }
/*-----------------------------------------*/
/* header FIXED */
#header-area.fixed {
  height: 61px;
  border-bottom: 1px solid #eeeeee;
  margin: 0 auto;
  padding-left: 40px;
  padding-right: 40px;
  position: fixed;
  top: 0 !important;
  left: 0;
  width: 100%;
  background: #fff;
  max-width: inherit; }
  #header-area.fixed #header-area__inner {
    padding-top: 11px;
    max-width: calc(1250px - 80px); }
  #header-area.fixed #header-area__logo {
    top: 14px; }
    #header-area.fixed #header-area__logo img {
      width: 190px;
      height: 38px; }
  #header-area.fixed #header-area__pc__lang {
    display: none !important; }
  #header-area.fixed #header-area__contact {
    top: 0px;
    right: -40px; }
    #header-area.fixed #header-area__contact a {
      height: 60px;
      padding-top: 20px;
      /*
      transition: none;
      */ }
  #header-area.fixed #gnav-pc {
    justify-content: flex-start;
    padding-left: 230px; }
  #header-area.fixed #gnav-pc > li {
    margin: 0 18px; }

@media screen and (max-width: 1100px) {
  #header-area.fixed #header-area__logo {
    top: 20px; }
    #header-area.fixed #header-area__logo img {
      width: 150px;
      height: 32px; }
  #header-area.fixed #gnav-pc {
    padding-left: 180px; }
  #header-area.fixed #gnav-pc > li {
    margin: 0 10px;
    font-size: 14px; }
  #header-area.fixed #header-area__contact a {
    height: 60px;
    width: 100px;
    padding-top: 20px; } }
@media screen and (max-width: 935px) {
  #header-area.fixed #header-area__logo {
    top: 24px; }
    #header-area.fixed #header-area__logo img {
      width: 120px;
      height: auto; }
  #header-area.fixed #gnav-pc {
    padding-left: 135px; }
  #header-area.fixed #gnav-pc > li {
    margin: 0 6px;
    font-size: 13px; }
  #header-area.fixed #header-area__contact a {
    height: 60px;
    width: 60px;
    padding-top: 15px;
    padding-left: 3px;
    padding-right: 3px; } }
/* END header FIXED */
/*-----------------------------------------*/
/* SP */
@media screen and (max-width: 767px) {
  #header-sp-wrap {
    height: 55px; }

  #header-sp {
    height: 55px;
    border-bottom: 1px solid #eeeeee;
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000; }

  #header-sp__inner {
    position: relative;
    height: 54px; }

  #header-sp__logo {
    padding: 15px 0 0 15px;
    line-height: 0; }
    #header-sp__logo img {
      width: 150px;
      height: 24px; }

  #header-sp__contact {
    position: absolute;
    top: 0;
    right: 54px; }
    #header-sp__contact a {
      display: block;
      width: 100px;
      height: 54px;
      color: #fff;
      background: #fb8c00;
      text-align: center;
      font-size: 12px;
      text-decoration: none;
      font-weight: bold;
      line-height: 1;
      padding-top: 22px; }

  #header_menu_btn {
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
    width: 54px;
    height: 54px;
    background: #053250 url(/common/images/head_menu_btn.png) 0 0 no-repeat;
    background-size: 54px 54px; }
    #header_menu_btn span {
      opacity: 0;
      font-size: 9px; }
    #header_menu_btn.open {
      background: #053250 url(/common/images/head_menu_btn_open.png) 0 0 no-repeat;
      background-size: 54px 54px; }

  #header-sp-nav {
    background: #053250;
    /*
    position: absolute;
    */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    z-index: 1001;
    -webkit-overflow-scrolling: touch;
    /**/
    display: none; }

  #header-sp-nav__header {
    position: relative;
    height: 60px; }
    #header-sp-nav__header form {
      position: relative;
      padding: 15px 0px 0 15px;
      margin-right: 70px; }

  #header-sp-nav__search-btn {
    position: absolute;
    top: 15px;
    left: 15px;
    border: none;
    width: 36px;
    height: 32px;
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    background: url(/common/images/icon_search_w.svg) 50% 50% no-repeat;
    background-size: 18px 18px; }

  #header-sp-nav__search-text {
    width: 100%;
    padding: 0px 30px 0 38px;
    border: none;
    border-radius: 4px;
    background: #385B72;
    color: #fff;
    line-height: 1.1;
    height: 32px;
    font-size: 16px;
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button; }

  #header-sp-nav__search-text::-webkit-input-placeholder {
    color: #fff;
    font-size: 12px;
    padding-top: 5px; }

  #header-sp-nav__search-text::-moz-placeholder {
    color: #fff;
    font-size: 12px; }

  #header-sp-nav__search-text:focus:placeholder-shown {
    color: transparent; }

  #header-sp-nav__search-text:focus::-webkit-input-placeholder {
    color: transparent; }

  #header-sp-nav__search-text:focus::-moz-placeholder {
    color: transparent; }

  #header-sp-nav__search-clear {
    position: absolute;
    top: 15px;
    right: 0px;
    border: none;
    width: 32px;
    height: 32px;
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    background: url(/common/images/icon_close_btn.svg) 50% 50% no-repeat;
    background-size: 18px 18px;
    /**/
    display: none; }

  #header_menu_btn-close {
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
    width: 54px;
    height: 54px;
    background: #053250 url(/common/images/head_menu_btn_open.png) 0 0 no-repeat;
    background-size: 54px 54px; }
    #header_menu_btn-close span {
      opacity: 0;
      font-size: 9px; }

  #header-sp-nav__list {
    border-bottom: 1px solid #385B72; }
    #header-sp-nav__list > li {
      border-top: 1px solid #385B72;
      font-size: 14px; }
      #header-sp-nav__list > li a {
        position: relative;
        display: block;
        padding: 19px 25px 19px 15px;
        color: #fff; }
        #header-sp-nav__list > li a::after {
          position: absolute;
          top: 50%;
          right: 14px;
          width: 8px;
          height: 8px;
          margin-top: -5px;
          border-right: 1px solid #fff;
          border-bottom: 1px solid #fff;
          transform: rotate(-45deg);
          content: ""; }
      #header-sp-nav__list > li .header-sp-nav__accordion-btn {
        position: relative;
        display: block;
        padding: 19px 25px 19px 15px;
        color: #fff;
        cursor: pointer; }
        #header-sp-nav__list > li .header-sp-nav__accordion-btn::after {
          position: absolute;
          top: 50%;
          right: 12px;
          width: 12px;
          height: 12px;
          margin-top: -6px;
          content: "";
          display: block;
          background: url(/common/images/icon_plus_w.svg) 50% 50% no-repeat;
          background-size: 12px 12px; }
        #header-sp-nav__list > li .header-sp-nav__accordion-btn.open::after {
          background: url(/common/images/icon_minus_w.svg) 50% 50% no-repeat;
          background-size: 12px 12px; }
      #header-sp-nav__list > li ul {
        padding: 0 0px 0 15px; }
        #header-sp-nav__list > li ul li {
          border-top: 1px solid #385B72;
          font-size: 12px; }
          #header-sp-nav__list > li ul li a {
            padding: 11px 25px 11px 15px; }
      #header-sp-nav__list > li dl {
        padding: 0 0px 0 15px; }
        #header-sp-nav__list > li dl dt {
          background: #385b72;
          font-size: 11px;
          font-weight: normal;
          color: #b0bec5;
          padding: 5px 15px; }
        #header-sp-nav__list > li dl dd ul li:first-child {
          border-top: none; }

  #header-sp-nav__footer {
    padding: 20px 15px 30px; }
    #header-sp-nav__footer ul {
      display: flex;
      flex-wrap: wrap; }
      #header-sp-nav__footer ul li {
        margin-right: 10px; }
        #header-sp-nav__footer ul li a {
          display: inline-block;
          border-radius: 4px;
          border: 1px solid #ffffff;
          color: #ffffff;
          padding: 10px;
          line-height: 1; }
          #header-sp-nav__footer ul li a.current {
            background: #ffffff;
            border: 1px solid #ffffff;
            color: #053250; }

  /*--------------*/ }
.header-sp-nav__accordion-body {
  display: none; }

@media screen and (max-width: 347px) {
  #header-sp__contact a {
    width: 84px;
    font-size: 11px; }

  /*--------------------*/ }
/* gnav-sp(SP)
------------------------------------------------------------------------------- */
/* SP */
@media screen and (max-width: 767px) {
  /*--------------*/ }
/* パンくず
------------------------------------------------------------------------------- */
.bread_link {
  max-width: 1250px;
  margin: 0 auto;
  padding: 8px 40px;
  color: #546e7a; }
  .bread_link ol li {
    display: inline;
    font-size: 12px;
    padding-right: 3px;
    line-height: 1; }
    .bread_link ol li::after {
      content: ">";
      display: inline;
      padding-left: 3px; }
    .bread_link ol li:last-child::after {
      display: none; }
  .bread_link p {
    font-size: 12px;
    line-height: 1; }
  .bread_link a {
    color: #546e7a;
    text-decoration: underline; }

/* SP */
@media screen and (max-width: 767px) {
  .bread_link {
    padding: 12px 15px; }
    .bread_link ol li {
      font-size: 10px; }
    .bread_link p {
      font-size: 10px;
      line-height: 1.5; }

  /*------------------*/ }
/* パンくず -下層調整用-
------------------------------------------------------------------------------- */
ol#branch_ls {
  line-height: 35px; }

/* content-main
------------------------------------------------------------------------------- */
#contents-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; }

#contents-wrap.contents-wrap-detail {
  margin-top: 60px; }

#main {
  width: 100%;
  margin: 0 auto;
  position: relative;
  overflow: visible;
  font-size: 15px; }

#side + #main {
  width: calc(100% - 240px);
  max-width: calc(1250px - 240px);
  padding-left: 40px;
  padding-right: 40px;
  margin: 0 0 60px 0; }

/* 下階層時 */
#contents-wrap > #side:first-child + #main {
  margin-top: 60px; }

article p {
  margin-bottom: 17px;
  line-height: 1.8; }

article p + p {
  margin-top: -7px; }

/* SP */
@media screen and (max-width: 767px) {
  /* 下階層時 */
  #contents-wrap > #side:first-child + #main {
    margin-top: 20px; }

  #main {
    order: 1;
    overflow: hidden;
    width: 100% !important; }

  #side + #main {
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 20px; }

  /*-------------*/ }
.box-inner {
  max-width: 1250px;
  margin: 0 auto;
  position: relative;
  padding-left: 40px;
  padding-right: 40px; }

.box-col01 .box-inner {
  padding-top: 60px;
  padding-bottom: 40px; }

.box-inner02 {
  /* max-width: 970px; */
  max-width: 1050px;
  margin: 0 auto;
  position: relative;
  padding-left: 40px;
  padding-right: 40px; }

/* SP */
@media screen and (max-width: 767px) {
  .box-inner,
  .box-inner02 {
    padding-left: 15px;
    padding-right: 15px; }

  .box-col01 .box-inner {
    padding-top: 40px;
    padding-bottom: 20px; }

  /*------------------*/ }
/* side
------------------------------------------------------------------------------- */
#side {
  width: 240px;
  padding-left: 40px;
  margin-bottom: 60px;
  padding-top: 5px; }

/* 下階層時 */
#contents-wrap > #side:first-child {
  margin-top: 60px; }

.side-list {
  font-size: 14px; }
  .side-list > li {
    margin-top: -1px;
    border-top: 1px solid #eeeeee; }
    .side-list > li > a {
      display: block;
      position: relative;
      background: #fafafa;
      font-weight: bold;
      text-decoration: none !important;
      padding: 10px 30px 10px 10px;
      border-left: 1px solid #eeeeee;
      border-right: 1px solid #eeeeee;
      border-bottom: 1px solid #eeeeee; }
      .side-list > li > a::after {
        position: absolute;
        top: 50%;
        right: 12px;
        width: 8px;
        height: 8px;
        margin-top: -5px;
        border-right: 1px solid #053250;
        border-bottom: 1px solid #053250;
        transform: rotate(-45deg);
        content: ""; }
    .side-list > li > a.link-pdf {
      background: #fafafa url(/common/images/icon_pdf.png) calc(100% - 5px) 50% no-repeat;
      background-size: 24px 24px; }
      .side-list > li > a.link-pdf::after {
        display: none; }

.side-list__accordion-btn {
  cursor: pointer;
  display: block;
  position: relative;
  font-size: 14px;
  font-weight: bold;
  color: #053250;
  padding: 10px 33px 10px 10px;
  border-left: 1px solid #eeeeee;
  border-right: 1px solid #eeeeee;
  border-bottom: 1px solid #eeeeee;
  background: #fafafa url(/common/images/icon_plus.svg) calc(100% - 9px) 50% no-repeat;
  background-size: 12px 12px; }
  .side-list__accordion-btn.open {
    background: #fafafa url(/common/images/icon_minus.svg) calc(100% - 9px) 50% no-repeat;
    background-size: 12px 12px; }

.side-list__accordion-body {
  position: relative;
  /**/
  display: none; }

.side-list-sub {
  font-size: 14px; }
  .side-list-sub > li > a {
    display: block;
    position: relative;
    text-decoration: none !important;
    padding: 10px 30px 10px 10px;
    border-bottom: 1px solid #eeeeee; }
    .side-list-sub > li > a::after {
      position: absolute;
      top: 50%;
      right: 12px;
      width: 8px;
      height: 8px;
      margin-top: -5px;
      border-right: 1px solid #053250;
      border-bottom: 1px solid #053250;
      transform: rotate(-45deg);
      content: ""; }
    .side-list-sub > li > a:hover {
      color: #ECEFF1; }
  .side-list-sub > li:last-child > a {
    border-bottom: none; }
  .side-list-sub > li.current > a {
    background: #053250;
    color: #fff; }
  .side-list-sub > li > a.link-pdf {
    background: url(/common/images/icon_pdf.png) calc(100% - 5px) 50% no-repeat;
    background-size: 24px 24px; }
    .side-list-sub > li > a.link-pdf::after {
      display: none; }
  .side-list-sub > li .side-list-sub02 {
    display: none; }
  .side-list-sub > li.current .side-list-sub02 {
    display: block; }

.side-list-sub02 {
  font-size: 14px;
  border-bottom: 1px solid #eeeeee;
  padding: 15px; }
  .side-list-sub02 > li {
    padding: 5px 0; }
    .side-list-sub02 > li > a {
      text-decoration: underline; }
    .side-list-sub02 > li.current > a {
      text-decoration: none;
      color: #b0bec5;
      font-weight: bold; }

/* SP */
@media screen and (max-width: 767px) {
  #side {
    order: 2;
    padding: 20px 15px;
    width: 100%;
    margin: 0 !important;
    border-top: 1px solid #eeeeee; }

  .side-list {
    margin: 0 -15px; }
    .side-list > li > a {
      padding: 10px 30px 10px 15px; }
    .side-list > li > a.link-pdf {
      background-position: calc(100% - 8px) 50% !important; }

  .side-list__accordion-btn {
    padding: 10px 33px 10px 15px; }

  .side-list-sub > li > a {
    padding: 10px 30px 10px 15px; }

  .side-list-sub > li > a.link-pdf {
    background-position: calc(100% - 8px) 50% !important; }

  .side-list-sub02 {
    font-size: 12px;
    border-bottom: 1px solid #eeeeee;
    padding: 0 0px 0 15px; }
    .side-list-sub02 > li {
      padding: 0; }
      .side-list-sub02 > li > a {
        display: block;
        position: relative;
        text-decoration: none !important;
        padding: 10px 30px 10px 0px;
        border-bottom: 1px solid #eeeeee; }
        .side-list-sub02 > li > a::after {
          position: absolute;
          top: 50%;
          right: 12px;
          width: 8px;
          height: 8px;
          margin-top: -5px;
          border-right: 1px solid #053250;
          border-bottom: 1px solid #053250;
          transform: rotate(-45deg);
          content: ""; }
      .side-list-sub02 > li.current > a::after {
        display: none; }
    .side-list-sub02 > li:last-child > a {
      border-bottom: none; }

  /*----------------------*/ }
/* side - banner -
------------------------------------------------------------------------------- */
.banner_list {
  margin: 40px 0 20px; }
  .banner_list > .banner_item + .banner_item {
    margin: 10px 0 0; }
  .banner_list img {
    width: 100%; }

/* SP */
@media screen and (max-width: 767px) {
  .banner_list {
    margin: 30px 0 20px; } }
/* Footer
----------------------------------------------------------- */
/* PC */
@media screen and (min-width: 768px) {
  footer#footer-area {
    border-top: 1px solid #eceff1;
    padding-top: 30px; }
    footer#footer-area nav ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: center; }
      footer#footer-area nav ul li {
        border-right: 1px solid #212121;
        line-height: 1.1;
        margin: 0 15px 0 0;
        padding-right: 15px; }
        footer#footer-area nav ul li:last-child {
          border-right: none;
          padding-right: 0px; }
        footer#footer-area nav ul li a {
          color: #212121;
          font-size: 14px;
          text-decoration: none; }
    footer#footer-area nav ol {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center;
      padding: 30px 0 30px 25px; }
      footer#footer-area nav ol li {
        margin-right: 25px;
        margin-bottom: 15px; }
        footer#footer-area nav ol li a {
          display: inline-block;
          position: relative;
          color: #212121;
          font-size: 12px;
          padding: 1px 10px 1px 2px; }
          footer#footer-area nav ol li a::after {
            position: absolute;
            top: 50%;
            right: 0px;
            width: 5px;
            height: 5px;
            margin-top: -3px;
            border-right: 1px solid #212121;
            border-bottom: 1px solid #212121;
            transform: rotate(-45deg);
            content: ""; }
        footer#footer-area nav ol li a.link-blank {
          padding-right: 20px;
          text-decoration: none; }
          footer#footer-area nav ol li a.link-blank::after {
            display: none; }

  .copyright {
    background: #053250;
    color: #fff;
    text-align: center;
    font-size: 11px;
    margin: 0;
    padding: 26px 5px 20px;
    line-height: 1.3; }

  /*----------------------*/ }
/* SP */
@media screen and (max-width: 767px) {
  footer#footer-area nav ul {
    display: flex;
    flex-wrap: wrap;
    border-top: 4px solid #eceff1; }
    footer#footer-area nav ul li {
      width: 50%;
      border-bottom: 1px solid #eceff1;
      border-right: 1px solid #eceff1;
      background: #fff; }
      footer#footer-area nav ul li:nth-of-type(2n) {
        border-right: none; }
      footer#footer-area nav ul li a {
        display: block;
        position: relative;
        color: #212121;
        font-size: 12px;
        padding: 13px 26px 13px 15px; }
        footer#footer-area nav ul li a::after {
          position: absolute;
          top: 50%;
          right: 13px;
          width: 8px;
          height: 8px;
          margin-top: -5px;
          border-right: 1px solid #053250;
          border-bottom: 1px solid #053250;
          transform: rotate(-45deg);
          content: ""; }
  footer#footer-area nav ol {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 15px 0; }
    footer#footer-area nav ol li {
      width: 50%;
      padding-left: 15px; }
      footer#footer-area nav ol li a {
        display: inline-block;
        position: relative;
        color: #546e7a;
        font-size: 11px;
        padding: 8px 7px 8px 0; }
        footer#footer-area nav ol li a::after {
          position: absolute;
          top: 50%;
          right: 0px;
          width: 5px;
          height: 5px;
          margin-top: -4px;
          border-right: 1px solid #053250;
          border-bottom: 1px solid #053250;
          transform: rotate(-45deg);
          content: ""; }
      footer#footer-area nav ol li a.link-blank {
        padding-right: 20px;
        text-decoration: none; }
        footer#footer-area nav ol li a.link-blank::after {
          display: none; }

  .copyright {
    background: #053250;
    color: #fff;
    text-align: center;
    font-size: 9px;
    margin: 0;
    padding: 10px 5px;
    line-height: 1.3; }

  /*----------------------*/
  #footer_sp nav ul {
    display: flex;
    flex-wrap: wrap;
    border-top: 4px solid #eceff1; }
    #footer_sp nav ul li {
      width: 50%;
      border-bottom: 1px solid #eceff1;
      border-right: 1px solid #eceff1;
      background: #fff; }
      #footer_sp nav ul li:nth-of-type(2n) {
        border-right: none; }
      #footer_sp nav ul li a {
        display: block;
        position: relative;
        color: #212121;
        font-size: 12px;
        padding: 13px 26px 13px 15px; }
        #footer_sp nav ul li a::after {
          position: absolute;
          top: 50%;
          right: 13px;
          width: 8px;
          height: 8px;
          margin-top: -5px;
          border-right: 1px solid #053250;
          border-bottom: 1px solid #053250;
          transform: rotate(-45deg);
          content: ""; }
  #footer_sp nav ol {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 15px 0; }
    #footer_sp nav ol li {
      width: 50%;
      padding-left: 15px; }
      #footer_sp nav ol li a {
        display: inline-block;
        position: relative;
        color: #546e7a;
        font-size: 11px;
        padding: 8px 7px 8px 0; }
        #footer_sp nav ol li a::after {
          position: absolute;
          top: 50%;
          right: 0px;
          width: 5px;
          height: 5px;
          margin-top: -4px;
          border-right: 1px solid #053250;
          border-bottom: 1px solid #053250;
          transform: rotate(-45deg);
          content: ""; }

  /*----------------------*/ }
p#back_top {
  z-index: 1000; }

/* pagetop
------------------------------------------------------------------------------- */
#page-top {
  display: none;
  position: fixed;
  right: 10px;
  bottom: 20px;
  z-index: 20; }
  #page-top a img {
    width: 100%;
    vertical-align: middle; }
  #page-top a:hover img {
    opacity: 1; }

/* sp */
@media screen and (max-width: 767px) {
  #page-top {
    width: 55px;
    height: 55px; } }
/* Print
----------------------------------------------------------- */
@media print {
  .sp-view {
    display: none !important; }

  .pc-view {
    display: block; }

  #header-wrap {
    padding-bottom: 5px;
    height: auto !important; }

  #header-area {
    height: auto !important;
    padding-left: 15px !important;
    padding-right: 15px !important; }

  #header-area__inner {
    padding-top: 10px; }

  #header-area__logo,
  #header-area.fixed {
    position: static !important; }

  #contents-wrap {
    display: block !important; }

  #main {
    width: auto !important;
    padding: 0 !important;
    max-width: inherit !important; }

  .box-inner {
    max-width: inherit !important;
    padding-left: 15px !important;
    padding-right: 15px !important; }

  .page-ttl {
    max-width: inherit !important;
    padding-left: 15px !important;
    padding-right: 15px !important; }

  .copyright {
    background: #fff !important;
    color: #000 !important;
    font-size: 11px !important;
    padding: 10px 5px 10px !important; }

  .bread_link,
  #header-area__pc__lang,
  #header-area__contact,
  #gnav-pc,
  #side,
  footer#footer-area nav,
  #footer_sp {
    display: none; }

  /*----------------------*/ }
/*
	File Name   : partsstyle.scss
	Description : パーツ用のスタイル
*/
/* PC */
@media screen and (min-width: 768px) {
  /*-------------*/ }
/* SP */
@media screen and (max-width: 767px) {
  /*-------------*/ }
/* style 
----------------------------------------------------------- */
/* image */
#main img:not([width]) {
  vertical-align: top;
  width: auto;
  max-width: 100%; }

#main .img_size100 img {
  width: 100%; }

/* dummy-ttl */
.dummy-ttl {
  background: #666;
  color: #fff;
  font-size: 18px;
  margin-bottom: 0px; }
  .dummy-ttl span {
    display: block;
    max-width: calc(1250px - 80px);
    margin: 0 auto;
    padding: 15px 15px; }

@media screen and (max-width: 767px) {
  .dummy-ttl {
    font-size: 14px;
    font-weight: bold; }

  .box-inner .dummy-ttl {
    margin-left: -15px;
    margin-right: -15px; } }
/* END dummy-ttl */
hr.dummy-line {
  border: none;
  border-bottom: 1px solid #ccc;
  margin: 50px 0; }

/* link
----------------------------------------------------------- */
a {
  color: #053250; }

article a {
  text-decoration: underline; }
  article a:link {
    color: #212121; }
  article a:visited {
    color: #8c5aa0; }
  article a:hover {
    color: #1958aa; }

.link-effect {
  display: block;
  position: relative;
  z-index: 1;
  border: 1px solid #eeeeee;
  text-decoration: none; }

a.link-effect:hover {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
  z-index: 10; }

/* link-arrow */
.link-arrow {
  padding-right: 25px;
  text-decoration: underline;
  background: url(/common/images/icon_arrow_link.svg) 100% 48% no-repeat;
  background-size: 12px 12px; }
  .link-arrow + .link-arrow {
    margin-right: 12px; }
  .link-arrow.arrow-before {
    padding-right: 0;
    padding-left: 25px;
    background-position: 0 48%; }
    .link-arrow.arrow-before + .link-arrow {
      margin-right: 0;
      margin-left: 12px; }

@media screen and (max-width: 767px) {
  .link-arrow.arrow-before {
    margin-right: 10px;
    padding-left: 20px; }
    .link-arrow.arrow-before + .link-arrow {
      margin-right: 10px;
      margin-left: 0; } }
/* END link-arrow */
/* link-blank */
.link-blank {
  padding-right: 20px;
  text-decoration: underline;
  background: url(/common/images/icon_other_link.svg) 100% 50% no-repeat;
  background-size: 13px 11px; }

@media screen and (max-width: 767px) {
  .link-blank {
    background-size: 12px 10px !important; }

  /*------------*/ }
/* END link-blank */
/* link-pdf */
.link-pdf {
  padding-right: 35px;
  text-decoration: underline;
  background: url(/common/images/icon_pdf.png) 100% 50% no-repeat;
  background-size: 24px 24px;
  min-height: 24px; }

@media screen and (max-width: 767px) {
  .link-pdf {
    padding-right: 25px;
    background-size: 16px 16px !important;
    min-height: 16px; }

  /*------------*/ }
/* END link-pdf */
/* btn
----------------------------------------------------------- */
/* btn-wrap */
.btn-wrap {
  text-align: center;
  margin-bottom: 80px;
  line-height: 1.5; }

.btn-wrap02 {
  text-align: center;
  margin-bottom: 80px;
  padding-top: 40px;
  line-height: 1.5; }

.btn-wrap03 {
  text-align: center;
  margin-bottom: 80px;
  margin-top: 30px;
  line-height: 1.5; }
  .btn-wrap03 div {
    display: inline-block;
    margin: 0 13px;
    margin-bottom: 20px; }

.btn-wrap04 {
  margin-bottom: 80px;
  margin-top: 30px;
  line-height: 1.5; }
  .btn-wrap04 > div a.btn-type-arrow,
  .btn-wrap04 > div a.btn-contact {
    display: table;
    padding: 0 40px;
    width: 100%; }
    .btn-wrap04 > div a.btn-type-arrow > span,
    .btn-wrap04 > div a.btn-contact > span {
      display: table-cell;
      vertical-align: middle;
      padding: 5px 0; }

@media screen and (max-width: 767px) {
  .btn-wrap {
    margin-bottom: 40px; }

  .btn-wrap02 {
    padding-top: 20px;
    margin-bottom: 40px; }
    .btn-wrap02 .col-md-4,
    .btn-wrap02 .col-md-3 {
      margin-bottom: 10px; }
      .btn-wrap02 .col-md-4:last-child,
      .btn-wrap02 .col-md-3:last-child {
        margin-bottom: 0px; }

  .btn-wrap03 {
    margin-bottom: 40px;
    margin-top: 20px; }
    .btn-wrap03 div {
      display: block;
      margin: 0 0 20px 0; }

  .btn-wrap04 {
    margin-bottom: 40px;
    margin-top: 20px; }
    .btn-wrap04 > div {
      margin-bottom: 10px; }
      .btn-wrap04 > div:last-child {
        margin-bottom: 0; }

  /*-------------*/ }
/* END btn-wrap */
/* btn-type-back */
a.btn-type-back {
  position: relative;
  display: inline-block;
  margin: 0 auto;
  width: 370px;
  max-width: 100%;
  height: 60px;
  padding-top: 17px;
  border: 1px solid #546e7a;
  background: #546e7a;
  border-radius: 60px;
  text-align: center;
  font-size: 16px;
  color: #fff !important;
  text-decoration: none; }
  a.btn-type-back::after {
    position: absolute;
    top: 50%;
    right: 25px;
    width: 13px;
    height: 11px;
    display: block;
    margin-top: -6px;
    content: "";
    background: url(/common/images/icon_turn_w.svg) 0px 100% no-repeat;
    background-size: 13px 11px;
    /**/ }
  a.btn-type-back:hover {
    opacity: 0.8; }

@media screen and (max-width: 767px) {
  a.btn-type-back {
    display: block;
    font-size: 14px;
    height: 50px;
    padding-top: 12px;
    margin: 0 auto;
    width: auto;
    max-width: 345px; }
    a.btn-type-back::after {
      width: 12px;
      height: 10px;
      right: 23px;
      background-size: 12px 10px; }

  /*-------------*/ }
/* END btn-type-back */
/* btn-type-arrow */
a.btn-type-arrow {
  position: relative;
  display: inline-block;
  margin: 0 auto;
  width: 370px;
  max-width: 100%;
  height: 60px;
  padding-top: 17px;
  border: 1px solid #053250;
  border-radius: 60px;
  text-align: center;
  font-size: 16px;
  color: #053250 !important;
  text-decoration: none; }
  a.btn-type-arrow::after {
    position: absolute;
    top: 50%;
    right: 25px;
    width: 11px;
    height: 11px;
    margin-top: -6px;
    border-right: 1px solid #053250;
    border-bottom: 1px solid #053250;
    transform: rotate(-45deg);
    content: ""; }
  a.btn-type-arrow[target="_blank"]::after {
    border: none;
    transform: rotate(0);
    background: url(/common/images/icon_other_link.svg) 100% 50% no-repeat;
    background-size: 13px 11px;
    width: 13px; }
  a.btn-type-arrow:hover {
    background: #053250;
    color: #fff !important; }
    a.btn-type-arrow:hover::after {
      border-right: 1px solid #fff;
      border-bottom: 1px solid #fff; }
  a.btn-type-arrow[target="_blank"]:hover::after {
    border: none;
    background-image: url(/common/images/icon_other_link@white.svg); }

@media screen and (max-width: 767px) {
  a.btn-type-arrow {
    display: block;
    font-size: 14px;
    height: 100%;
    min-height: 50px;
    padding: 12px 40px; }
    a.btn-type-arrow::after {
      margin-top: -4px;
      width: 8px;
      height: 8px; }
    a.btn-type-arrow[target="_blank"]::after {
      background-size: 12px 10px;
      margin-top: -6px;
      width: 12px;
      height: 10px; }

  /*-------------*/ }
/* END btn-type-arrow */
/* btn-contact */
a.btn-contact {
  position: relative;
  display: inline-block;
  margin: 0 auto;
  width: 370px;
  max-width: 100%;
  height: 60px;
  padding-top: 17px;
  border: 1px solid #fb8c00;
  border-radius: 60px;
  text-align: center;
  font-size: 16px;
  color: #fff !important;
  text-decoration: none;
  background: #fb8c00; }
  a.btn-contact::after {
    position: absolute;
    top: 50%;
    right: 25px;
    width: 11px;
    height: 11px;
    margin-top: -6px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    transform: rotate(-45deg);
    content: ""; }
  a.btn-contact:hover {
    background: #faad54 !important;
    border: 1px solid #faad54 !important; }
    a.btn-contact:hover::after {
      border-right: 1px solid #fff;
      border-bottom: 1px solid #fff; }

@media screen and (max-width: 767px) {
  a.btn-contact {
    display: block;
    font-size: 14px;
    height: 50px;
    padding-top: 12px; }
    a.btn-contact::after {
      margin-top: -4px;
      width: 8px;
      height: 8px; }

  /*-------------*/ }
/* END btn-contact */
/* btn-contact-wrap */
.btn-contact-wrap {
  max-width: 770px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between; }
  .btn-contact-wrap dl {
    text-align: left;
    min-width: 340px;
    margin-right: 10px; }
    .btn-contact-wrap dl dt {
      font-size: 15px;
      font-weight: bold;
      color: #053250;
      margin: 0 0 2px 0;
      line-height: 1.1; }
    .btn-contact-wrap dl dd {
      font-size: 34px;
      font-weight: bold; }
      .btn-contact-wrap dl dd a {
        background: url(/common/images/icon_freedial.png) 0px calc(50% - 2px) no-repeat;
        padding-left: 60px;
        min-height: 30px;
        display: inline-block;
        color: #053250 !important;
        text-decoration: none !important; }

/* PC */
@media screen and (min-width: 768px) {
  .link-freedial {
    cursor: default; }
    .link-freedial:hover {
      opacity: 1 !important; }

  /*-------------*/ }
.btn-contact-wrap02.w380 {
  max-width: 380px; }

.btn-contact-wrap02 {
  max-width: 370px;
  margin: 0 auto; }
  .btn-contact-wrap02 dl {
    margin-bottom: 10px; }
    .btn-contact-wrap02 dl dt {
      font-size: 15px;
      font-weight: bold;
      color: #053250;
      margin: 0 0 2px 0;
      line-height: 1.1;
      text-align: center; }
    .btn-contact-wrap02 dl dd {
      font-size: 34px;
      font-weight: bold;
      text-align: left; }
      .btn-contact-wrap02 dl dd a {
        background: url(/common/images/icon_freedial.png) 10px calc(50% - 2px) no-repeat;
        min-height: 30px;
        padding-left: 70px;
        display: inline-block;
        color: #053250 !important;
        text-decoration: none !important; }
        
        /* 電話番号下注意書き */
        .btn-contact-wrap02 + .note-red{
          color: #cc0000;
          margin: 0;
          font-size: 12px;
          line-height: 1.5;
          display:-webkit-box;
          display:-ms-flexbox;
          display:flex;
          width: 80%;
          max-width: 410px;
          margin: 12px auto 0;
        }
        @media screen and (max-width: 767px) {
          .btn-contact-wrap02 + .note-red{
            width: 100%;
            max-width: 380px;
            margin: 12px auto 0;
          }
        }

.row .btn-contact-wrap02 dl dd {
  font-size: 2.56vw; }
  .row .btn-contact-wrap02 dl dd a {
    background-size: 14.6% auto;
    padding-left: 20%;
    padding-left: 5.5vw; }

/* PC */
@media screen and (min-width: 1250px) {
  .btn-contact-wrap02 dl dd {
    font-size: 34px !important; }
    .btn-contact-wrap02 dl dd a {
      background-size: auto;
      padding-left: 70px !important; } }
@media screen and (min-width: 768px) {
  .btn-contact-wrap dl dd a:hover,
  .btn-contact-wrap02 dl dd a:hover {
    opacity: 0.7; }

  /*-------------*/ }
/* SP */
@media screen and (max-width: 767px) {
  .btn-contact-wrap,
  .btn-contact-wrap02 {
    padding-top: 20px;
    display: block; }
    .btn-contact-wrap dl,
    .btn-contact-wrap02 dl {
      min-width: inherit;
      margin-right: 0px;
      margin-bottom: 10px; }
      .btn-contact-wrap dl dt,
      .btn-contact-wrap02 dl dt {
        font-size: 14px;
        margin: 0 0 5px 0;
        text-align: center; }
      .btn-contact-wrap dl dd,
      .btn-contact-wrap02 dl dd {
        font-size: 30px;
        text-align: center; }
        .btn-contact-wrap dl dd a,
        .btn-contact-wrap02 dl dd a {
          background-size: 46px 26px !important;
          padding-left: 55px;
          min-height: 26px;
          display: inline-block; }

  .row .btn-contact-wrap02 dl dd {
    font-size: 30px; }
    .row .btn-contact-wrap02 dl dd a {
      background-size: 46px 26px !important;
      padding-left: 55px; }

  /*-------------*/ }
@media screen and (max-width: 368px) {
  .btn-contact-wrap dl dd,
  .btn-contact-wrap02 dl dd {
    font-size: 24px; }
    .btn-contact-wrap dl dd a,
    .btn-contact-wrap02 dl dd a {
      background-size: 36px auto !important;
      padding-left: 45px;
      min-height: 26px; }

  .row .btn-contact-wrap02 dl dd {
    font-size: 24px; }
    .row .btn-contact-wrap02 dl dd a {
      background-size: 36px auto !important;
      padding-left: 45px; }

  /*-------------*/ }
/* ENDbtn-contact-wrap */
/* eng-doc-link */
.eng-doc-link {
  margin: 40px 0;
  text-align: right; }
  .eng-doc-link a {
    display: inline-block;
    line-height: 1;
    color: #546e7a !important;
    text-decoration: none !important;
    background: #eceff1;
    border-radius: 4px;
    padding: 10px;
    font-size: 12px; }
    .eng-doc-link a:hover {
      opacity: 0.7; }

@media screen and (max-width: 767px) {
  .eng-doc-link {
    margin: 30px 0; }
    .eng-doc-link a {
      font-size: 10px; }

  /*-------------*/ }
/* END eng-doc-link */
/* title 
----------------------------------------------------------- */
/* page-ttl */
.page-ttl-wrap {
  max-width: 1250px;
  margin: 0 auto;
  padding: 40px 40px 36px;
  background-color: rgba(255, 255, 255, 0.9);
  background: -webkit-linear-gradient(top, #fff 1%, rgba(255, 255, 255, 0.8) 100%);
  background: linear-gradient(to bottom, #fff 1%, rgba(255, 255, 255, 0.8) 100%); }
  .page-ttl-wrap .page-ttl {
    position: relative;
    line-height: 1.1;
    letter-spacing: 2px;
    font-size: 36px;
    color: #212121;
    font-weight: normal; }
    .page-ttl-wrap .page-ttl .page-ttl__sub {
      font-size: 20px;
      padding-left: 25px; }
    .page-ttl-wrap .page-ttl .page-ttl__img {
      position: absolute;
      top: 0;
      margin-top: -15px;
      right: 0;
      line-height: 0; }
  .page-ttl-wrap p.page-ttl {
    margin-bottom: 0; }

#contents-wrap > .page-ttl-wrap {
  width: 100%;
  max-width: inherit;
  padding-left: 0px;
  padding-right: 0px; }
  #contents-wrap > .page-ttl-wrap .page-ttl {
    max-width: 1250px;
    margin: 0 auto;
    padding-left: 40px;
    padding-right: 40px; }

#main_ph .page-ttl-wrap {
  max-width: inherit;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  padding-left: 0px;
  padding-right: 0px;
  border-bottom: none !important;
  margin-bottom: 0 !important; }
  #main_ph .page-ttl-wrap .page-ttl {
    max-width: 1250px;
    margin: 0 auto;
    padding-left: 40px;
    padding-right: 40px; }
#main_ph #mainslider {
  max-width: 1466px;
  padding: 0 100px;
  margin: 0 auto; }
  #main_ph #mainslider .mainslider_list {
    opacity: 0;
    -webkit-transition: opacity .1s ease-in;
    transition: opacity .1s ease-in;
    max-height: 600px;
    /*overflow: hidden;*/ }
    #main_ph #mainslider .mainslider_list img {
      width: 100% !important;
      vertical-align: middle; }
    #main_ph #mainslider .mainslider_list .item {
      max-height: 600px; }
    #main_ph #mainslider .mainslider_list.slick-initialized {
      opacity: 1; }
  #main_ph #mainslider .slick-dots {
    bottom: -35px; }
  #main_ph #mainslider .slick-prev {
    left: -70px; }
  #main_ph #mainslider .slick-next {
    right: -70px; }

#main article > .page-ttl:first-child {
  position: relative;
  line-height: 1.1;
  letter-spacing: 2px;
  font-size: 36px;
  color: #212121;
  font-weight: normal;
  padding: 0 0 25px 0;
  border-bottom: 2px solid #053250;
  margin-bottom: 55px; }

  /* タイトル下注意書き */
 .page-ttl-msg{
    margin: 30px auto 0;
    width: 80%;
    max-width: 800px;
    text-align: center;   
  }
  @media screen and (max-width: 767px) {
    .page-ttl-msg{
      text-align: left;
    }
  }
  .page-ttl-msg .msg-box{
    border:1px solid #cc0000;
    padding:5px;
    margin-bottom: 6px;
    background-color: #ffecec;
  }
  .page-ttl-msg .msg-red{
    color: #cc0000;
    font-size: 12px;
    line-height: 1.5;
    margin: 0;
    text-align: center;
  }
  @media screen and (max-width: 767px) {
    .page-ttl-msg .msg-red{
      text-align: left;
    }
  }


@media screen and (max-width: 767px) {
  #main article > .page-ttl:first-child {
    margin-left: -15px;
    margin-right: -15px;
    margin-bottom: 35px;
    font-size: 22px;
    font-weight: bold;
    padding: 17px 15px 17px !important;
    border-bottom: 1px solid #eeeeee !important; }

  .page-ttl-wrap {
    padding: 17px 15px 17px !important;
    border-bottom: 1px solid #eeeeee !important;
    margin-bottom: 40px; }
    .page-ttl-wrap .page-ttl {
      display: flex;
      align-items: flex-end;
      justify-content: space-between;
      letter-spacing: 0px;
      font-size: 22px;
      font-weight: bold;
      padding: 0px !important; }
      .page-ttl-wrap .page-ttl .page-ttl__sub {
        font-size: 15px;
        padding-left: 10px; }
      .page-ttl-wrap .page-ttl .page-ttl__text {
        display: block; }
      .page-ttl-wrap .page-ttl .page-ttl__img {
        position: static;
        min-width: 113px;
        max-width: 113px; }

  /*-------------*/ }
/* END page-ttl */
/* ttl-type01 */
.ttl-type01 {
  position: relative;
  color: #212121;
  font-size: 24px;
  line-height: 1.25;
  font-weight: normal;
  padding-bottom: 20px;
  margin-bottom: 40px;
  margin-top: 80px;
  background: url(/common/images/ttl_bg01.png) -20px 100% no-repeat;
  background-size: 1190px 1px; }
  .ttl-type01 .ttl-type01__img {
    position: absolute;
    top: 0;
    margin-top: -10px;
    right: 0;
    line-height: 0; }
  .ttl-type01 .ttl-type01__sub {
    font-size: 15px;
    display: block;
    color: #212121;
    padding-top: 8px;
    margin-bottom: -3px; }

#main article > .ttl-type01:first-child,
#main article > .ttl-type01:first-child,
#news-detail > .ttl-type01:first-child,
.newsdate-text + .ttl-type01,
.box-col01 .box-inner > .ttl-type01:first-child,
.flex-item > .box-inner > .ttl-type01:first-child {
  margin-top: 0; }

.photo-item-list3 + .ttl-type01,
#photo-item-list3-slide_sp + .ttl-type01,
.link-list + .ttl-type01 {
  margin-top: 60px; }

.page-ttl + .ttl-type01 {
  margin-top: 55px; }

@media screen and (max-width: 767px) {
  .ttl-type01 {
    font-size: 18px;
    font-weight: bold;
    padding-bottom: 15px;
    background: url(/common/images/ttl_bg01.png) 0px 100% no-repeat;
    background-size: auto 2px;
    margin-bottom: 20px;
    margin-top: 35px;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between; }
    .ttl-type01 .ttl-type01__img {
      position: static;
      margin-top: 5px;
      min-width: 113px;
      max-width: 113px; }
    .ttl-type01 .ttl-type01__sub {
      width: 100%; }

  .photo-item-list3 + .ttl-type01,
  #photo-item-list3-slide_sp + .ttl-type01,
  .link-list + .ttl-type01 {
    margin-top: 35px; }

  .page-ttl + .ttl-type01 {
    margin-top: 35px; }

  /*-------------*/ }
/* END ttl-type01 */
/* ttl-type02 */
.ttl-type02 {
  background: url(/common/images/ttl_bg02.png) 0 0 no-repeat;
  color: #212121;
  font-size: 20px;
  padding-left: 12px;
  margin-bottom: 20px;
  margin-top: 60px;
  line-height: 1.2;
  position: relative;
  display: flex;
  justify-content: space-between; }
  .ttl-type02 .ttl-type02__img {
    min-width: 170px;
    margin-left: 20px;
    text-align: right; }

.link-list + .ttl-type02 {
  margin-top: 40px; }

#side__inner > .ttl-type02 {
  margin-top: 0px; }

@media screen and (max-width: 767px) {
  .ttl-type02 {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 15px;
    margin-top: 35px !important; }
    .ttl-type02 .ttl-type02__img {
      min-width: 100px;
      margin-left: 10px;
      text-align: right; }

  #side__inner > .ttl-type02 {
    margin-top: 0px !important; }

  /*-------------*/ }
/* END ttl-type02 */
/* ttl-type02b */
.ttl-type02b {
  color: #053250;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
  margin-top: 60px;
  line-height: 1.2;
  position: relative;
  display: flex;
  justify-content: space-between; }
  .ttl-type02b > span:first-child {
    padding: 0 20px 0 0; }
  .ttl-type02b .ttl-type02b__img {
    min-width: 170px;
    text-align: right; }
    .ttl-type02b .ttl-type02b__img > img + img {
      margin: 0 0 0 10px; }
  .ttl-type02b.color-green {
    color: #A7D174; }
  .ttl-type02b.color-blue {
    color: #8EBEE6; }
  .ttl-type02b.color-purple {
    color: #E9A4E3; }
  .ttl-type02b.color-light-blue {
    color: #88CED5; }

.link-list + .ttl-type02b {
  margin-top: 40px; }

#side__inner > .ttl-type02b {
  margin-top: 0px; }

@media screen and (max-width: 767px) {
  .ttl-type02b {
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 15px;
    margin-top: 35px !important; }
    .ttl-type02b > span:first-child {
      padding: 0 10px 0 0; }
    .ttl-type02b .ttl-type02b__img {
      min-width: 100px;
      text-align: right; }
      .ttl-type02b .ttl-type02b__img > img + img {
        margin: 5px 0 0; }

  #side__inner > .ttl-type02b {
    margin-top: 0px !important; }

  /*-------------*/ }
/* END ttl-type02b */
/* ttl-type03 */
.ttl-type03 {
  position: relative;
  color: #212121;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 20px;
  margin-top: 40px;
  display: flex;
  justify-content: space-between; }
  .ttl-type03 .ttl-type03__img {
    min-width: 170px;
    margin-left: 20px;
    text-align: right; }
  .ttl-type03.navy {
    color: #053250; }

@media screen and (max-width: 767px) {
  .ttl-type03 {
    font-size: 14px;
    margin-bottom: 15px;
    margin-top: 30px; }
    .ttl-type03 .ttl-type03__img {
      min-width: 100px;
      margin-left: 10px;
      text-align: right; }

  /*-------------*/ }
/* END ttl-type03 */
/* List 
----------------------------------------------------------- */
.list-col-wrap {
  margin: 0 15px; }

@media screen and (max-width: 767px) {
  margin: 0 5px; }
/* BASIC */
ul.basic-list {
  list-style: none;
  padding-bottom: 10px; }
  ul.basic-list > li {
    position: relative;
    margin-bottom: 10px;
    padding-left: 1.2em;
    text-indent: 0; }
    ul.basic-list > li:before {
      display: block;
      content: " ";
      position: absolute;
      left: 0;
      top: 0.43em;
      width: 6px;
      height: 6px;
      background: url(/common/images/list_dot_black.svg) 0 0 no-repeat;
      background-size: 6px 6px; }
  ul.basic-list > li.col-6 {
    padding-left: calc(1.2em + 15px); }
    ul.basic-list > li.col-6:before {
      left: 15px; }
  ul.basic-list.blue_dot > li:before {
    background-image: url(/common/images/list_dot_blue.svg); }

ol.basic-list {
  list-style: decimal;
  padding: 0 0 0 1em;
  padding-bottom: 10px; }
  ol.basic-list > li {
    position: relative;
    margin-bottom: 10px; }

/*SP*/
@media screen and (max-width: 767px) {
  .row ul.basic-list.col-md-4 {
    padding-bottom: 30px; }

  .row ul.basic-list.col-md-4:last-child {
    padding-bottom: 10px; }

  /*-------------*/ }
/* END BASIC */
/* no-disc-list */
ul.no-disc-list {
  list-style: none;
  padding-bottom: 10px;
  text-indent: 0; }
  ul.no-disc-list > li {
    position: relative;
    margin-bottom: 10px;
    text-indent: 0; }

/* END no-disc-list */
/* numbering-list */
ol.numbering-list {
  list-style: none;
  padding-bottom: 10px;
  counter-reset: numbering; }
  ol.numbering-list > li {
    position: relative;
    margin-bottom: 10px;
    padding-left: 2.2em; }
    ol.numbering-list > li:before {
      counter-increment: numbering;
      content: "(" counter(numbering) ")";
      color: #212121;
      position: absolute;
      left: 0; }
  ol.numbering-list.normal > li:before {
    content: "counter(numbering)"; }

/* END numbering-list */
/* numbering-list02 */
ol.numbering-list02 {
  padding: 5px 0;
  list-style: none; }
  ol.numbering-list02 > li {
    position: relative;
    margin-bottom: 10px;
    font-size: 14px;
    padding-left: 2em;
    text-indent: -2em; }
  ol.numbering-list02.hankaku > li {
    padding-left: 1.3em;
    text-indent: -1.3em; }

/* photo-item-list3 */
.photo-item-list3 {
  display: flex;
  flex-wrap: wrap;
  margin-right: -3px;
  margin-bottom: 60px; }
  .photo-item-list3 li {
    width: calc(33.3333% - 2px);
    margin-right: 2px;
    margin-bottom: 20px; }

/* SP */
@media screen and (max-width: 767px) {
  .photo-item-list3 {
    margin-right: 0px;
    margin-bottom: 30px; }
    .photo-item-list3 li {
      width: calc(50% - 5px);
      margin-right: 10px;
      margin-bottom: 10px; }
      .photo-item-list3 li:nth-of-type(2n) {
        margin-right: 0px; }
      .photo-item-list3 li a {
        background: #fafafa; }
      .photo-item-list3 li .photo-item__text .photo-item__text__inner {
        background: none; }

  .photo-item-list3.slick-slider {
    margin-bottom: 55px !important;
    margin-right: -15px; }
    .photo-item-list3.slick-slider li {
      width: 285px; }
      .photo-item-list3.slick-slider li:nth-of-type(2n) {
        margin-right: 10px; }

  /*--------------------*/ }
/* END photo-item-list3 */
/* photo-item-list4 */
.photo-item-list4 li {
  margin-bottom: 20px; }
  .photo-item-list4 li .photo-item__text {
    height: 50px; }

@media screen and (max-width: 767px) {
  .photo-item-list4 {
    margin-bottom: 30px; }
    .photo-item-list4 li {
      margin-bottom: 10px; }
      .photo-item-list4 li a {
        background: #fafafa; }
      .photo-item-list4 li .photo-item__text {
        height: 45px; }
        .photo-item-list4 li .photo-item__text:not(.link-pdf) .photo-item__text__inner {
          background: none; }

  /*--------------------*/ }
/* END photo-item-list4 */
/* photo-item-list5 */
.photo-item-list5 {
  margin-bottom: 30px; }
  .photo-item-list5 li {
    margin-bottom: 30px; }

@media screen and (max-width: 767px) {
  .photo-item-list5 li {
    margin-bottom: 10px; }
    .photo-item-list5 li.col-12 > * {
      width: 50%; }

  .photo-item-list5.slick-slider li {
    margin-bottom: 10px; }

  .photo-item-list5.slick-slider {
    margin: 0 -15px;
    margin-bottom: 55px !important; }

  /*--------------------*/ }
/* END photo-item-list5 */
/* link-list */
.link-list {
  margin-bottom: 60px; }
  .link-list li {
    margin-bottom: 20px; }
    .link-list li a {
      display: table;
      width: 100%;
      height: 60px;
      position: relative;
      background: #fafafa;
      border: 1px solid #eeeeee;
      font-size: 16px;
      line-height: 1.4;
      color: #053250 !important;
      text-decoration: none; }
      .link-list li a::after {
        position: absolute;
        top: 50%;
        right: 15px;
        width: 11px;
        height: 11px;
        margin-top: -6px;
        border-right: 1px solid #053250;
        border-bottom: 1px solid #053250;
        transform: rotate(-45deg);
        content: ""; }
      .link-list li a span {
        display: table-cell;
        vertical-align: middle;
        padding: 3px 35px 3px 15px; }
    .link-list li a:hover {
      border: 1px solid #053250;
      background: #fff;
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.15); }
    .link-list li.noactive > span {
      background-color: #053250;
      color: #fff;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      height: 60px;
      padding: 3px 35px 3px 15px;
      -webkit-align-items: center;
      align-items: center; }

@media screen and (max-width: 767px) {
  .link-list {
    margin-bottom: 30px; }
    .link-list li {
      margin-bottom: 10px; }
      .link-list li a {
        font-size: 12px;
        height: 45px; }
        .link-list li a::after {
          right: 8px;
          width: 8px;
          height: 8px;
          margin-top: -5px; }
        .link-list li a span {
          padding: 3px 20px 3px 10px; }
      .link-list li.noactive > span {
        font-size: 12px;
        height: 45px;
        padding: 3px 20px 3px 10px; }

  /*--------------------*/ }
@media screen and (max-width: 347px) {
  .link-list li a {
    font-size: 10px; }

  /*--------------------*/ }
/* END link-list */
/* LIST PARTS */
.photo-item__ph {
  line-height: 0; }
  .photo-item__ph img {
    width: 100%; }

.photo-item__text {
  display: table;
  width: 100%;
  height: 60px;
  position: relative;
  border-collapse: collapse; }
  .photo-item__text::after {
    position: absolute;
    top: 50%;
    right: 15px;
    width: 11px;
    height: 11px;
    margin-top: -6px;
    border-right: 1px solid #053250;
    border-bottom: 1px solid #053250;
    transform: rotate(-45deg);
    content: ""; }
  .photo-item__text.no_arrow::after {
    display: none; }
  .photo-item__text .photo-item__text__inner {
    display: table-cell;
    vertical-align: middle;
    position: relative;
    padding: 5px 30px 5px 13px;
    line-height: 1.4;
    color: #546e7a;
    background: #fff; }
    .photo-item__text .photo-item__text__inner dl {
      padding: 8px 5px 8px 0; }
      .photo-item__text .photo-item__text__inner dl dt {
        font-size: 12px;
        line-height: 1;
        margin-bottom: 8px; }
        .photo-item__text .photo-item__text__inner dl dt span.mark {
          color: #fff;
          padding: 5px;
          min-width: 110px;
          text-align: center;
          display: inline-block;
          margin-right: 10px;
          font-size: 10px;
          background: #1958aa; }
      .photo-item__text .photo-item__text__inner dl dd {
        font-size: 14px; }
  .photo-item__text.link-pdf {
    background: none;
    padding-right: 0px;
    text-decoration: none; }
    .photo-item__text.link-pdf::after {
      display: none; }
    .photo-item__text.link-pdf .photo-item__text__inner {
      padding-right: 35px;
      background: url(/common/images/icon_pdf.png) calc(100% - 10px) 50% no-repeat;
      background-size: 24px 24px; }
  .photo-item__text.link-modaal {
    background: none;
    padding-right: 0px;
    text-decoration: none; }
    .photo-item__text.link-modaal::after {
      display: none; }
    .photo-item__text.link-modaal .photo-item__text__inner {
      padding-right: 5px;
      padding-left: 5px;
      text-align: center; }
      .photo-item__text.link-modaal .photo-item__text__inner span {
        display: inline-block;
        background: url(/common/images/icon_search.svg) 100% 45% no-repeat;
        background-size: 16px 16px;
        padding-right: 20px; }

.photo-item__text-next {
  padding: 5px 13px 10px 13px;
  font-size: 12px;
  color: #000 !important;
  margin-top: -8px;
  position: relative;
  line-height: 1.4;
  z-index: 10; }
  .photo-item__text-next > .name {
    display: block;
    font-weight: bold;
    padding: 3px 0; }

/* photo-item__double */
article p.photo-item__double-ttl {
  font-weight: bold;
  margin-bottom: 10px; }

.photo-item__double {
  display: block;
  position: relative;
  z-index: 1;
  border: 1px solid #eeeeee; }
  .photo-item__double .photo-item__text {
    border-top: 1px solid #eeeeee; }
    .photo-item__double .photo-item__text::after {
      display: none; }
    .photo-item__double .photo-item__text .photo-item__text__inner {
      position: relative;
      width: 50%;
      text-decoration: none !important;
      font-size: 14px;
      padding: 5px 34px 5px 11px; }
      .photo-item__double .photo-item__text .photo-item__text__inner:hover {
        opacity: 0.7; }
    .photo-item__double .photo-item__text .photo-item__text__inner:first-child {
      border-right: 1px solid  #eeeeee; }
      .photo-item__double .photo-item__text .photo-item__text__inner:first-child::after {
        position: absolute;
        top: 50%;
        right: 15px;
        width: 11px;
        height: 11px;
        margin-top: -6px;
        border-right: 1px solid #053250;
        border-bottom: 1px solid #053250;
        transform: rotate(-45deg);
        content: ""; }
    .photo-item__double .photo-item__text .photo-item__text__inner:last-child {
      background: url(/common/images/icon_pdf.png) calc(100% - 8px) 50% no-repeat;
      background-size: 24px 24px; }

/* END photo-item__double */
/* SP */
@media screen and (max-width: 767px) {
  .photo-item__text {
    height: 45px;
    font-size: 12px; }
    .photo-item__text::after {
      right: 10px;
      width: 8px;
      height: 8px;
      margin-top: -5px; }
    .photo-item__text .photo-item__text__inner {
      padding: 5px 24px 5px 8px; }
      .photo-item__text .photo-item__text__inner dl {
        padding: 5px 0px 5px 0; }
        .photo-item__text .photo-item__text__inner dl dt {
          font-size: 12px;
          line-height: 1;
          margin-bottom: 8px; }
        .photo-item__text .photo-item__text__inner dl dd {
          font-size: 12px; }

  /* photo-item__double */
  article p.photo-item__double-ttl {
    font-size: 12px;
    padding-top: 10px;
    margin-bottom: 10px; }

  .photo-item__double .photo-item__text .photo-item__text__inner {
    font-size: 12px;
    padding: 5px 28px 5px 5px; }
  .photo-item__double .photo-item__text .photo-item__text__inner:first-child::after {
    right: 10px;
    width: 6px;
    height: 6px;
    margin-top: -3px; }
  .photo-item__double .photo-item__text .photo-item__text__inner:last-child {
    background: url(/common/images/icon_pdf.png) calc(100% - 7px) 50% no-repeat;
    background-size: 16px auto; }

  /*--------------------*/ }
/* END LIST PARTS */
/* dl(definition list)
----------------------------------------------------------- */
/**/
.dl-type01 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px; }
  .dl-type01 dt {
    width: 120px;
    margin-right: 20px;
    text-align: left;
    font-weight: normal;
    color: #212121;
    font-size: 14px; }
  .dl-type01 dd {
    width: calc(100% - 140px);
    text-align: left;
    font-size: 14px; }
  .dl-type01 dd.news-category {
    width: 140px;
    padding-right: 5px;
    font-size: 12px;
    line-height: 1; }
    .dl-type01 dd.news-category .news-category__icon01,
    .dl-type01 dd.news-category .news-category__icon02 {
      display: inline-block;
      border-radius: 2px;
      min-width: 120px;
      padding: 4px;
      color: #fff;
      background: #546e7a;
      text-align: center; }
    .dl-type01 dd.news-category .news-category__icon02 {
      background: #f29600; }
  .dl-type01 dd.news-category + dd {
    width: calc(100% - 280px); }

/* SP */
@media screen and (max-width: 767px) {
  .dl-type01 {
    border-bottom: 1px solid #eeeeee;
    padding-bottom: 13px;
    margin-bottom: 15px; }
    .dl-type01:last-child {
      border-bottom: none;
      padding-bottom: 0px;
      margin-bottom: 0px; }
    .dl-type01 dt {
      width: auto;
      min-width: 100px;
      margin: 0 0 8px 0;
      font-size: 12px;
      line-height: 1.2; }
    .dl-type01 dd {
      width: 100%; }
    .dl-type01 dd.news-category {
      width: calc(100% -120px);
      padding-right: 0px;
      font-size: 10px; }
      .dl-type01 dd.news-category .news-category__icon01,
      .dl-type01 dd.news-category .news-category__icon02 {
        min-width: 100px;
        padding: 3px; }
    .dl-type01 dd.news-category + dd {
      width: 100%; }

  /*--------------------*/ }
/* box
----------------------------------------------------------- */
.box-col01 {
  background: #f6f7f9; }

/* main_ph */
#main_ph {
  position: relative;
  margin-bottom: 80px; }
  #main_ph figure {
    line-height: 0; }
    #main_ph figure img {
      width: 100% !important; }
  #main_ph .ttl-visual {
    position: absolute;
    /*
    top:calc(50% - 140px);
    */
    top: calc(50% - 100px);
    left: 0;
    z-index: 3;
    width: 100%;
    text-align: center;
    color: #fff; }
  #main_ph .ttl-visual__catchphrase {
    font-size: 54px;
    letter-spacing: 5px;
    line-height: 1.296;
    margin: 0 0 17px 0;
    padding: 0; }
    #main_ph .ttl-visual__catchphrase.ja {
      font-size: 45px;
      letter-spacing: 0.1em; }
  #main_ph .ttl-visual__lead {
    font-size: 20px;
    font-weight: normal;
    letter-spacing: 4px;
    line-height: 2;
    margin-bottom: 53px; }
  #main_ph .ttl-visual__btn {
    width: 240px;
    margin: 0 auto;
    line-height: 1; }
    #main_ph .ttl-visual__btn a {
      position: relative;
      display: block;
      margin: 0 auto;
      height: 40px;
      padding-top: 12px;
      border: 1px solid #fff;
      border-radius: 40px;
      text-align: center;
      font-size: 14px;
      color: #fff;
      text-decoration: none;
      font-weight: bold; }
      #main_ph .ttl-visual__btn a::after {
        position: absolute;
        top: 50%;
        right: 22px;
        width: 7px;
        height: 7px;
        margin-top: -4px;
        border-right: 1px solid #fff;
        border-bottom: 1px solid #fff;
        transform: rotate(-45deg);
        content: ""; }
      #main_ph .ttl-visual__btn a:hover {
        background: #fff;
        color: #053250; }
        #main_ph .ttl-visual__btn a:hover::after {
          border-right: 1px solid #053250;
          border-bottom: 1px solid #053250; }
  #main_ph .visual-over {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    text-align: center;
    overflow: hidden;
    background-color: transparent;
    background: url(/common/images/bg_video_over.png) repeat center center;
    background-size: auto auto; }

/* PC */
@media screen and (min-width: 768px) {
  #main_ph figure {
    /*
    max-height: 540px;
    */
    max-height: 600px;
    overflow: hidden; }

  /*-------------*/ }
@media screen and (max-width: 995px) {
  #main_ph .ttl-visual {
    top: calc(50% - 55px); }
  #main_ph .ttl-visual__catchphrase {
    font-size: 42px;
    letter-spacing: 5px;
    line-height: 1.296;
    margin: 0 0 15px 0;
    padding: 0; }
    #main_ph .ttl-visual__catchphrase.ja {
      font-size: 40px; }
  #main_ph .ttl-visual__lead {
    font-size: 17px;
    font-weight: normal;
    letter-spacing: 4px;
    line-height: 2;
    margin-bottom: 20px; } }
/* SP */
@media screen and (max-width: 767px) {
  #main_ph {
    overflow: hidden;
    margin-bottom: 35px; }
    #main_ph .ttl-visual {
      top: calc(50% - 23px); }
    #main_ph .ttl-visual__catchphrase {
      font-size: 18px;
      letter-spacing: 3px;
      line-height: 1.2;
      margin: 0 0 15px 0;
      text-shadow: 0 0 3px black; }
      #main_ph .ttl-visual__catchphrase.ja {
        font-size: 18px; }
    #main_ph .ttl-visual__lead {
      font-size: 10px;
      letter-spacing: 2px;
      line-height: 1.5;
      margin-bottom: 10px;
      text-shadow: 0 0 3px black; }
    #main_ph .ttl-visual__btn {
      width: 140px; }
      #main_ph .ttl-visual__btn a {
        height: 25px;
        padding-top: 7px;
        border-radius: 25px;
        font-size: 10px; }
        #main_ph .ttl-visual__btn a::after {
          top: 50%;
          right: 12px;
          width: 5px;
          height: 5px;
          margin-top: -3px; }
    #main_ph figure {
      margin-left: -15px;
      margin-right: -15px; }
    #main_ph.slider {
      overflow: visible;
      margin-bottom: 50px; }
    #main_ph #mainslider {
      padding: 0 50px; }
      #main_ph #mainslider .mainslider_list .item {
        height: 100%; }
      #main_ph #mainslider .slick-dots {
        z-index: 2;
        bottom: -25px; }
      #main_ph #mainslider .slick-prev {
        left: -40px; }
        #main_ph #mainslider .slick-prev:after {
          width: 22px;
          height: 22px; }
      #main_ph #mainslider .slick-next {
        right: -40px; }
        #main_ph #mainslider .slick-next:after {
          width: 22px;
          height: 22px; }

  /*--------------------*/ }
/* END main_ph */
/* P(Paragraph)
----------------------------------------------------------- */
.column-text p {
  line-height: 1.7;
  margin-bottom: 20px; }
  .column-text p img {
    vertical-align: bottom;
    margin-right: 20px; }
.column-text p + p {
  margin-top: 0; }

.notes-text {
  position: relative;
  text-indent: -1em;
  padding-left: 1em;
  font-size: 12px;
  line-height: 1.5;
  margin-bottom: 20px; }

.notes-text02 {
  position: relative;
  text-indent: -3em;
  padding-left: 3em;
  font-size: 12px;
  line-height: 1.5;
  margin-bottom: 20px; }

.notes-text03 {
  position: relative;
  padding-left: 1em;
  font-size: 12px;
  line-height: 1.5;
  margin-bottom: 20px; }
  .notes-text03 .asterisk {
    position: absolute;
    top: 0.15em;
    left: 0; }

.notes-text04 {
  position: relative;
  padding-left: 1.5em;
  font-size: 12px;
  line-height: 1.5;
  margin-bottom: 20px; }
  .notes-text04 .asterisk {
    position: absolute;
    top: 0em;
    left: 0; }

.column-text02 {
  border: 1px solid #eeeeee;
  padding: 20px;
  margin-bottom: 20px; }
  .column-text02 > *:first-child {
    margin-top: 0; }
  .column-text02 .ttl-type02:first-child {
    margin-top: 0 !important; }
  .column-text02 p img {
    vertical-align: bottom;
    margin-right: 20px; }
  .column-text02 p:last-child {
    margin-bottom: 0; }
  .column-text02 .ttl-type03 {
    margin-bottom: 10px; }
  .column-text02 .column-text-img {
    margin-bottom: 0; }

.column-text02-wrap-indent {
  padding-left: 80px; }

a.column-text02-wrap {
  position: relative;
  margin-bottom: 20px;
  display: block;
  text-decoration: none; }
  a.column-text02-wrap:link, a.column-text02-wrap:visited {
    color: #000; }
  a.column-text02-wrap:hover {
    background: #fafafa; }
  a.column-text02-wrap::after {
    position: absolute;
    top: 50%;
    right: 15px;
    width: 11px;
    height: 11px;
    margin-top: -6px;
    border-right: 1px solid #053250;
    border-bottom: 1px solid #053250;
    transform: rotate(-45deg);
    content: ""; }
  a.column-text02-wrap .column-text02 {
    margin-bottom: 0px;
    padding: 20px 35px 20px 20px; }

.column-text02-bg01 {
  background: #f5f5f5;
  padding: 20px;
  margin-bottom: 20px; }
  .column-text02-bg01 p img {
    vertical-align: bottom;
    margin-right: 20px; }
  .column-text02-bg01 p:last-child {
    margin-bottom: 0; }
  .column-text02-bg01 > .ttl-type03 {
    margin-top: 0; }

.column-type02 > div .ttl-type02 {
  margin-bottom: 30px; }
.column-type02 > div .ttl-type03 {
  margin-bottom: 15px; }
.column-type02 > div .ttl-type01:first-child,
.column-type02 > div .ttl-type02:first-child,
.column-type02 > div .ttl-type03:first-child {
  margin-top: 0 !important; }
.column-type02 > div:nth-last-of-type(-n+2) {
  margin-bottom: 0 !important; }
  .column-type02 > div:nth-last-of-type(-n+2) > p:last-child {
    margin-bottom: 0 !important; }

.newsdate-text {
  font-size: 14px;
  color: #546e7a;
  line-height: 1.1;
  margin-bottom: 15px;
  display: block; }

@media screen and (max-width: 767px) {
  .column-text p {
    line-height: 1.6;
    margin-bottom: 17px; }
  .column-text p + p {
    padding-top: 10px; }

  .notes-text {
    margin-bottom: 15px; }

  .notes-text02 {
    margin-bottom: 15px; }

  .notes-text03 {
    margin-bottom: 15px; }

  .column-text02-wrap-indent {
    padding-left: 15px; }

  .column-text02 {
    padding: 15px; }
    .column-text02 .column-text-img__text,
    .column-text02 .column-text-img__img {
      margin-bottom: 0; }
      .column-text02 .column-text-img__text .ttl-type03,
      .column-text02 .column-text-img__img .ttl-type03 {
        line-height: 1.7; }

  .column-text02-bg01 {
    padding: 15px; }

  .column-type02 > div {
    padding-top: 20px; }
    .column-type02 > div .ttl-type02 {
      margin-bottom: 15px; }
    .column-type02 > div .ttl-type03 {
      margin-bottom: 12px; }
    .column-type02 > div:nth-last-of-type(n+2) > p:last-child {
      margin-bottom: 17px !important; }
  .column-type02 > div + div {
    padding-top: 10px; }

  a.column-text02-wrap::after {
    right: 10px;
    width: 8px;
    height: 8px;
    margin-top: -5px; }
  a.column-text02-wrap .column-text02 {
    padding: 15px 25px 15px 15px; }

  .newsdate-text {
    font-size: 12px;
    margin-bottom: 10px; }

  /*--------------------*/ }
/* Table 
----------------------------------------------------------- */
/* tbl-type01 */
.tbl-type01 {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #b0bec5;
  table-layout: fixed; }
  .tbl-type01 caption {
    padding-top: 8px;
    caption-side: bottom;
    text-align: left;
    color: #546e7a;
    font-size: 12px; }
  .tbl-type01 > thead > tr > th, .tbl-type01 > thead > tr > td, .tbl-type01 > tbody > tr > th, .tbl-type01 > tbody > tr > td {
    padding: 10px 10px;
    font-size: 14px;
    text-align: left;
    border: 1px solid #b0bec5;
    background: #fff;
    vertical-align: top; }
  .tbl-type01 > thead > tr > th, .tbl-type01 > tbody > tr > th {
    background: #f5f5f5;
    color: #546e7a;
    font-weight: bold; }
  .tbl-type01.vertical-m > thead > tr > th, .tbl-type01.vertical-m > thead > tr > td, .tbl-type01.vertical-m > tbody > tr > th, .tbl-type01.vertical-m > tbody > tr > td {
    vertical-align: middle; }
  .tbl-type01 > thead > tr > th {
    text-align: center; }

/* SP */
@media screen and (max-width: 767px) {
  .tbl-type01 {
    white-space: nowrap;
    table-layout: auto; }
    .tbl-type01 > thead > tr > th, .tbl-type01 > thead > tr > td, .tbl-type01 > tbody > tr > th, .tbl-type01 > tbody > tr > td {
      white-space: nowrap;
      padding: 10px 10px;
      font-size: 12px; }

  /*--------------------*/ }
/* END tbl-type01 */
/* tbl-type02 */
.tbl-type02 {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 20px; }
  .tbl-type02 caption {
    padding-top: 8px;
    caption-side: bottom;
    text-align: left;
    color: #546e7a;
    font-size: 12px; }
  .tbl-type02 > thead > tr > th, .tbl-type02 > thead > tr > td, .tbl-type02 > tbody > tr > th, .tbl-type02 > tbody > tr > td {
    padding: 10px 10px;
    font-size: 14px;
    text-align: left;
    background: #fff;
    vertical-align: top; }
  .tbl-type02 > thead > tr > th, .tbl-type02 > tbody > tr > th {
    width: 10px;
    padding-left: 0;
    white-space: nowrap;
    color: #546e7a;
    font-weight: bold; }
  .tbl-type02 > thead > tr > th {
    text-align: center; }

/* SP */
@media screen and (max-width: 767px) {
  .tbl-type02 {
    table-layout: auto; }
    .tbl-type02 > thead > tr > th, .tbl-type02 > thead > tr > td, .tbl-type02 > tbody > tr > th, .tbl-type02 > tbody > tr > td {
      padding: 10px 10px;
      font-size: 12px; }
    .tbl-type02 > thead > tr > th, .tbl-type02 > tbody > tr > th {
      padding-left: 0;
      padding-right: 0; }
    .tbl-type02.tbl-nest-scroll {
      table-layout: fixed; }
      .tbl-type02.tbl-nest-scroll > tbody > tr > th {
        width: 20%;
        white-space: normal; }

  /*--------------------*/ }
/* END tbl-type02 */
/* tbl-type02-02 */
.tbl-type02-02 {
  border-collapse: collapse;
  margin-bottom: 20px; }
  .tbl-type02-02 caption {
    padding-top: 8px;
    caption-side: bottom;
    text-align: left;
    color: #546e7a;
    font-size: 12px; }
  .tbl-type02-02 > thead > tr > th, .tbl-type02-02 > thead > tr > td, .tbl-type02-02 > tbody > tr > th, .tbl-type02-02 > tbody > tr > td {
    padding: 10px 10px;
    font-size: 14px;
    text-align: left;
    background: #fff;
    vertical-align: top; }
  .tbl-type02-02 > thead > tr > th, .tbl-type02-02 > tbody > tr > th {
    padding-left: 0;
    white-space: nowrap;
    color: #546e7a;
    font-weight: bold; }
  .tbl-type02-02 > thead > tr > th {
    text-align: center; }

/* SP */
@media screen and (max-width: 767px) {
  .tbl-type02-02 {
    table-layout: auto; }
    .tbl-type02-02 > thead > tr > th, .tbl-type02-02 > thead > tr > td, .tbl-type02-02 > tbody > tr > th, .tbl-type02-02 > tbody > tr > td {
      padding: 10px 10px;
      font-size: 12px; }
    .tbl-type02-02 > thead > tr > th, .tbl-type02-02 > tbody > tr > th {
      width: 1px;
      padding-left: 0;
      padding-right: 0; }

  /*--------------------*/ }
/* END tbl-type02 */
/* tbl-type03 */
.tbl-type03 {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #b0bec5;
  table-layout: fixed; }
  .tbl-type03 caption {
    padding-top: 8px;
    caption-side: bottom;
    text-align: left;
    color: #546e7a;
    font-size: 12px; }
  .tbl-type03 > thead > tr > th, .tbl-type03 > thead > tr > td, .tbl-type03 > tbody > tr > th, .tbl-type03 > tbody > tr > td {
    padding: 10px 10px;
    font-size: 14px;
    text-align: left;
    border: 1px solid #b0bec5;
    background: #fff;
    vertical-align: top; }
  .tbl-type03 > thead > tr > th, .tbl-type03 > tbody > tr > th {
    background: #f5f5f5;
    color: #546e7a;
    font-weight: bold;
    width: 210px; }
  .tbl-type03 > thead > tr > th {
    text-align: center; }

/* SP */
@media screen and (max-width: 767px) {
  .tbl-type03 {
    white-space: nowrap;
    table-layout: auto; }
    .tbl-type03 > thead > tr > th, .tbl-type03 > thead > tr > td, .tbl-type03 > tbody > tr > th, .tbl-type03 > tbody > tr > td {
      white-space: nowrap;
      padding: 10px 10px;
      font-size: 12px; }
    .tbl-type03 > thead > tr > th, .tbl-type03 > tbody > tr > th {
      width: 120px; }

  /*--------------------*/ }
/* END tbl-type03 */
/* tbl-scroll-wrap */
.tbl-scroll-wrap {
  margin-top: 0px;
  margin-bottom: 20px; }

/* SP */
@media screen and (max-width: 767px) {
  .tbl-scroll-wrap {
    overflow: auto;
    width: 100%;
    /*
    -webkit-overflow-scrolling: touch;
    */
    padding-bottom: 8px; }
    .tbl-scroll-wrap table #backnumber-contents{
      font-size: 11px;
    }

  .tbl-scroll-wrap::-webkit-scrollbar {
    height: 5px; }

  .tbl-scroll-wrap::-webkit-scrollbar-thumb {
    background: #053250;
    border-radius: 5px; }

  .tbl-scroll-wrap::-webkit-scrollbar-track-piece {
    /*
    background: #b0bec5;
    */
    background: url(/common/images/table_scroll_bg.png) 0 50% no-repeat;
    background-size: 100% 1px; } }
/* END tbl-scroll-wrap */
/* tbl-type-dl */
.tbl-type-dl {
  display: flex;
  flex-wrap: wrap;
  border-left: 1px solid #b0bec5;
  border-top: 1px solid #b0bec5;
  margin-bottom: 40px; }
  .tbl-type-dl dl {
    width: 50%;
    display: table;
    border-bottom: 1px solid #b0bec5;
    border-right: 1px solid #b0bec5; }
    .tbl-type-dl dl dt {
      display: table-cell;
      width: 180px;
      font-size: 14px;
      color: #546e7a;
      font-weight: bold;
      text-align: left;
      background: #fafafa;
      padding: 10px 10px; }
    .tbl-type-dl dl dd {
      display: table-cell;
      padding: 10px 10px;
      font-size: 15px;
      background: #fff; }

/* SP */
@media screen and (max-width: 767px) {
  .tbl-type-dl {
    display: block;
    margin-bottom: 20px; }
    .tbl-type-dl dl {
      width: 100%;
      height: auto !important; }
      .tbl-type-dl dl dt {
        width: 180px;
        font-size: 12px;
        padding: 10px; }
      .tbl-type-dl dl dd {
        padding: 10px;
        font-size: 12px; }

  /*--------------------*/ }
/* END tbl-type-dl */
/* tbl-type-dl02 */
.tbl-type-dl02 {
  display: flex;
  flex-wrap: wrap;
  border-left: 1px solid #b0bec5;
  border-top: 1px solid #b0bec5;
  margin-bottom: 40px; }
  .tbl-type-dl02 dl {
    width: 50%;
    display: table;
    border-bottom: 1px solid #b0bec5;
    border-right: 1px solid #b0bec5; }
    .tbl-type-dl02 dl dt {
      display: table-cell;
      width: 180px;
      font-size: 14px;
      color: #546e7a;
      font-weight: bold;
      text-align: left;
      background: #fafafa;
      padding: 10px 10px; }
    .tbl-type-dl02 dl dd {
      display: table-cell;
      padding: 10px 10px;
      font-size: 15px;
      background: #fff; }

/* SP */
@media screen and (max-width: 767px) {
  .tbl-type-dl02 {
    display: block;
    margin-bottom: 20px; }
    .tbl-type-dl02 dl {
      width: 100%;
      height: auto !important; }
      .tbl-type-dl02 dl dt {
        display: block;
        width: 100%;
        font-size: 12px;
        padding: 10px; }
      .tbl-type-dl02 dl dd {
        display: block;
        padding: 10px;
        font-size: 12px; }

  /*--------------------*/ }
/* END tbl-type-dl02 */
/* pattern 
----------------------------------------------------------- */
/* NTTファシリティーズの建築事業について */
#building-about {
  margin-bottom: 40px; }
  #building-about a {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    background: #fff;
    border: 1px solid #eeeeee;
    text-decoration: none !important; }
    #building-about a:hover {
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
      opacity: 0.85; }
  #building-about dl {
    width: 50%;
    height: 300px;
    color: #0093d4;
    text-align: center;
    padding-top: 90px; }
    #building-about dl dt {
      font-size: 36px;
      line-height: 1.2;
      letter-spacing: 3px; }
      #building-about dl dt span {
        padding-top: 2px;
        display: block;
        font-size: 15px;
        letter-spacing: 0; }
    #building-about dl dd {
      padding-top: 20px; }
      #building-about dl dd span {
        position: relative;
        display: block;
        width: 240px;
        margin: 0 auto;
        height: 40px;
        padding-top: 12px;
        border: 1px solid #0093d4;
        border-radius: 40px;
        text-align: center;
        font-size: 14px;
        line-height: 1; }
        #building-about dl dd span::after {
          position: absolute;
          top: 50%;
          right: 22px;
          width: 7px;
          height: 7px;
          margin-top: -4px;
          border-right: 1px solid #0093d4;
          border-bottom: 1px solid #0093d4;
          transform: rotate(-45deg);
          content: ""; }
  #building-about p {
    width: 50%;
    height: 300px;
    text-align: center;
    font-size: 24px;
    line-height: 1.8;
    color: #fff;
    padding-top: 115px;
    background: url(/architect/img/top/building-about_bg.jpg) 50% 50% no-repeat;
    background-size: cover;
    margin: 0; }

/* SP */
@media screen and (max-width: 767px) {
  #building-about {
    margin-bottom: 35px; }
    #building-about dl {
      order: 2;
      width: 100%;
      height: auto;
      color: #0093d4;
      text-align: center;
      padding: 20px 5px 20px; }
      #building-about dl dt {
        font-size: 22px; }
        #building-about dl dt span {
          font-size: 10px; }
      #building-about dl dd {
        padding-top: 13px; }
        #building-about dl dd span {
          width: 180px;
          height: 30px;
          padding-top: 9px;
          border-radius: 30px;
          font-size: 10px; }
          #building-about dl dd span::after {
            top: 50%;
            right: 12px;
            width: 5px;
            height: 5px;
            margin-top: -3px; }
    #building-about p {
      order: 1;
      width: 100%;
      height: 125px;
      font-size: 16px;
      padding-top: 35px; }

  /*--------------------*/ }
/* END NTTファシリティーズの建築事業について */
/* タブ 関係  */
.func-tab {
  padding-bottom: 20px; }

/* PC */
@media screen and (min-width: 768px) {
  .func-tab__nav > ul > li {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    /**/
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease; }

  /*-------------*/ }
.func-tab__nav {
  margin: 0 auto;
  border-top: 1px solid #b0bec5;
  border-bottom: 1px solid #b0bec5;
  margin-bottom: 40px; }
  .func-tab__nav > ul {
    max-width: 1170px;
    display: flex;
    flex-wrap: nowrap;
    margin: 0 auto;
    border-left: 1px solid #b0bec5;
    height: 60px;
    padding: 0 0px;
    margin-bottom: -1px; }
    .func-tab__nav > ul > li {
      width: 25%;
      margin: 0px;
      line-height: 1;
      border-right: 1px solid #b0bec5;
      border-bottom: 1px solid #b0bec5;
      text-align: center;
      color: #053250;
      background: #fff;
      font-size: 16px;
      height: 60px;
      cursor: pointer; }
      .func-tab__nav > ul > li.current {
        border-bottom: 2px solid #053250; }
      .func-tab__nav > ul > li.open {
        background: #ffffff !important;
        border-bottom: 2px solid #fff !important; }
        .func-tab__nav > ul > li.open span {
          background: url(/common/images/icon_arrow01_up.png) calc(100% - 15px) 50% no-repeat; }
      .func-tab__nav > ul > li:hover {
        background: #f5f5f5; }
      .func-tab__nav > ul > li > span {
        display: block;
        height: 60px;
        padding-top: 22px;
        background: url(/common/images/icon_arrow01_btm.png) calc(100% - 15px) 50% no-repeat; }
      .func-tab__nav > ul > li > a {
        display: block;
        height: 60px;
        padding-top: 22px;
        color: #053250 !important;
        text-decoration: none !important; }

.func-tab__content {
  padding: 0;
  display: none; }

.tab-cate-list li {
  margin-bottom: 24px; }
  .tab-cate-list li a {
    display: table;
    width: 100%;
    height: 42px;
    border-bottom: 2px solid #eceff1;
    color: #546e7a !important;
    text-decoration: none !important;
    line-height: 1.3; }
    .tab-cate-list li a:hover, .tab-cate-list li a.current {
      color: #053250;
      border-bottom: 2px solid #053250; }
    .tab-cate-list li a span {
      display: table-cell;
      vertical-align: middle; }

/* タブ タイプ01 */
.func-tab.func-tab-type01 .func-tab__nav {
  margin: 0 auto;
  border-top: none;
  border-bottom: 1px solid #b0bec5;
  margin-bottom: 40px; }
  .func-tab.func-tab-type01 .func-tab__nav > ul {
    max-width: 1170px;
    display: flex;
    flex-wrap: nowrap;
    margin: 0 auto;
    border-left: none;
    height: 60px;
    padding: 0 40px;
    margin-bottom: -1px; }
    .func-tab.func-tab-type01 .func-tab__nav > ul > li {
      width: 50%;
      margin: 0px;
      line-height: 1;
      border-top: 1px solid #b0bec5;
      border-right: 1px solid #b0bec5;
      border-bottom: 1px solid #b0bec5;
      text-align: center;
      color: #053250;
      background: #fff;
      font-size: 16px;
      height: 60px;
      cursor: pointer;
      background: #fafafa; }
      .func-tab.func-tab-type01 .func-tab__nav > ul > li:first-child {
        border-left: 1px solid #b0bec5; }
      .func-tab.func-tab-type01 .func-tab__nav > ul > li.open {
        background: #ffffff !important;
        border-bottom: 2px solid #fff !important; }
        .func-tab.func-tab-type01 .func-tab__nav > ul > li.open span {
          background: none; }
      .func-tab.func-tab-type01 .func-tab__nav > ul > li:hover {
        background: #f5f5f5; }
      .func-tab.func-tab-type01 .func-tab__nav > ul > li > span {
        display: block;
        height: 60px;
        padding-top: 22px;
        background: none;
        padding-left: 2px !important;
        padding-right: 2px !important;
        border-left: none !important; }
      .func-tab.func-tab-type01 .func-tab__nav > ul > li > a {
        display: block;
        height: 60px;
        padding-top: 22px;
        color: #053250 !important;
        text-decoration: none !important; }

/* PC */
@media screen and (min-width: 768px) {
  .func-tab__nav ul li .func-tab__content {
    display: none !important; }

  /*-------------*/ }
/* SP */
@media screen and (max-width: 767px) {
  .func-tab {
    padding-bottom: 20px; }

  .func-tab__nav {
    border-top: 1px solid #eeeeee;
    border-bottom: none;
    margin-bottom: 20px; }
    .func-tab__nav > ul {
      display: block;
      border-left: none;
      height: auto;
      padding: 0 0px;
      margin-bottom: 0px; }
      .func-tab__nav > ul > li {
        position: relative;
        z-index: 10;
        width: 100%;
        margin: 0px;
        line-height: 1;
        border-right: none;
        border-bottom: 1px solid #eeeeee;
        text-align: left;
        background: #fff;
        font-size: 14px;
        height: auto;
        cursor: pointer; }
        .func-tab__nav > ul > li.current {
          border-bottom: 1px solid #eeeeee; }
          .func-tab__nav > ul > li.current > span {
            border-left: 4px solid #053250; }
        .func-tab__nav > ul > li.open {
          background: #f5f7f8 !important;
          border-bottom: 1px solid #eeeeee !important; }
          .func-tab__nav > ul > li.open span {
            background: url(/common/images/icon_minus.svg) calc(100% - 12px) 50% no-repeat;
            background-size: 12px 12px; }
        .func-tab__nav > ul > li > span {
          border-left: 4px solid transparent;
          display: block;
          height: 45px;
          padding-top: 14px;
          padding-left: 10px;
          background: url(/common/images/icon_plus.svg) calc(100% - 12px) 50% no-repeat;
          background-size: 12px 12px; }
        .func-tab__nav > ul > li > a {
          display: block;
          height: 45px;
          padding-top: 14px;
          padding-left: 10px;
          border-left: 4px solid transparent;
          position: relative; }
          .func-tab__nav > ul > li > a::after {
            position: absolute;
            top: 50%;
            right: 13px;
            width: 8px;
            height: 8px;
            margin-top: -5px;
            border-right: 1px solid #053250;
            border-bottom: 1px solid #053250;
            transform: rotate(-45deg);
            content: ""; }
        .func-tab__nav > ul > li.current > a {
          border-left: 4px solid #053250;
          background: #f5f7f8; }
        .func-tab__nav > ul > li .func-tab__content {
          border-top: 1px solid #eeeeee;
          background: #f5f7f8; }
          .func-tab__nav > ul > li .func-tab__content .box-inner {
            padding: 0; }

  .func-tab.func-tab-type01 .func-tab__nav > ul {
    display: flex;
    flex-wrap: nowrap;
    height: 45px;
    padding: 0 10px; }
    .func-tab.func-tab-type01 .func-tab__nav > ul > li {
      font-size: 14px;
      height: 45px; }
      .func-tab.func-tab-type01 .func-tab__nav > ul > li > span {
        height: 45px;
        padding-top: 15px; }
      .func-tab.func-tab-type01 .func-tab__nav > ul > li > a {
        display: block;
        height: 45px;
        padding-top: 15px; }

  /* END func-tab.func-tab-type01 */
  .tab-cate-list {
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: -1px; }
    .tab-cate-list li {
      margin-bottom: 0px;
      border-right: 1px solid #eeeeee;
      border-bottom: 1px solid #eeeeee;
      padding: 0 !important; }
      .tab-cate-list li:nth-of-type(2n) {
        border-right: none; }
      .tab-cate-list li a {
        height: 42px;
        border-bottom: none !important;
        font-size: 12px; }
        .tab-cate-list li a.current {
          color: #fff !important;
          background: #053250; }
        .tab-cate-list li a span {
          padding: 2px 5px 2px 10px;
          background: none !important; }

  /*--------------------*/ }
/* END タブ 関係  */
/* アコーディオン関係 */
.func-accordion__more-body {
  display: none; }

.func-accordion__more-btn {
  margin-bottom: 40px; }
  .func-accordion__more-btn a {
    display: block;
    text-align: center;
    background: #f5f5f5;
    padding: 13px 0;
    line-height: 1; }
    .func-accordion__more-btn a span {
      position: relative;
      display: inline-block;
      padding-right: 30px; }
      .func-accordion__more-btn a span::after {
        content: ' ';
        position: absolute;
        width: 11px;
        height: 11px;
        border-left: 1px solid #053250;
        border-bottom: 1px solid #053250;
        right: 0px;
        top: 50%;
        margin-top: -6px;
        -webkit-transform: rotate(-45deg) translateY(-50%);
        transform: rotate(-45deg) translateY(-50%); }
    .func-accordion__more-btn a span.more-btn__closetext {
      display: none; }
    .func-accordion__more-btn a:hover {
      background: #eceff1; }
  .func-accordion__more-btn.open a span::after {
    right: 7px;
    margin-top: -7px;
    -webkit-transform: rotate(135deg) translateY(-50%);
    transform: rotate(135deg) translateY(-50%); }
  .func-accordion__more-btn.open span.more-btn__opentext {
    display: none; }
  .func-accordion__more-btn.open span.more-btn__closetext {
    display: inline-block; }

/* PC */
@media screen and (min-width: 768px) {
  .func-accordion .photo-item-list3 {
    margin-bottom: 0; }
    .func-accordion .photo-item-list3 li:nth-of-type(n+4) {
      display: none; }

  /*-------------*/ }
/* SP */
@media screen and (max-width: 767px) {
  .func-accordion__more-btn {
    margin-bottom: 30px; }
    .func-accordion__more-btn a {
      font-size: 12px; }
      .func-accordion__more-btn a span {
        padding-right: 20px; }
        .func-accordion__more-btn a span::after {
          width: 7px;
          height: 7px;
          margin-top: -4px; }
    .func-accordion__more-btn.open a span::after {
      margin-top: -5px; }

  .func-accordion .photo-item-list3 {
    margin-bottom: 10px; }
    .func-accordion .photo-item-list3 li:nth-of-type(n+5) {
      display: none; }

  /*-------------*/ }
/* func-accordion01__more-body */
.func-accordion01__more-body {
  display: none;
  margin-bottom: 20px; }
  .func-accordion01__more-body .faq_body {
    position: relative;
    padding: 20px 25px 20px 55px; }
    .func-accordion01__more-body .faq_body::after {
      content: "A.";
      font-weight: bold;
      font-size: 16px;
      color: #1958aa;
      position: absolute;
      top: 20px;
      left: 0;
      width: 55px;
      text-align: center; }
    .func-accordion01__more-body .faq_body p:last-child {
      margin-bottom: 0; }

.foot-accordion-wrap {
  padding: 0 0 70px; }

.func-accordion01__more-btn {
  margin-bottom: 20px;
  cursor: pointer;
  color: #546e7a;
  font-size: 16px;
  line-height: 1.4;
  padding: 22px 45px 20px 20px;
  border: 1px solid #eeeeee;
  background: #fafafa url(/common/images/icon_plus.svg) calc(100% - 15px) 50% no-repeat;
  background-size: 20px 20px; }
  .func-accordion01__more-btn .faq_ttl {
    font-weight: bold;
    color: #053250; }
  .func-accordion01__more-btn.open {
    background: #fafafa url(/common/images/icon_minus.svg) calc(100% - 15px) 50% no-repeat;
    background-size: 20px 20px; }

/* SP */
@media screen and (max-width: 767px) {
  .foot-accordion-wrap {
    padding: 0 0 30px; }

  .func-accordion01__more-btn {
    margin-bottom: 10px;
    font-size: 14px;
    padding: 15px 40px 13px 10px;
    border: none; }

  .func-accordion01__more-body .faq_body {
    padding: 10px 20px 10px 40px; }
    .func-accordion01__more-body .faq_body::after {
      font-size: 14px;
      top: 12px;
      width: 40px; }
    .func-accordion01__more-body .faq_body p:last-child {
      margin-bottom: 0; }

  /*-------------*/ }
/* END func-accordion01__more-body */
/* END アコーディオン関係 */
/*動画*/
.movie-embed-cover {
  max-width: 570px;
  height: auto;
  margin: 30px auto 30px; }
  .movie-embed-cover.wide {
    max-width: 800px; }
  .movie-embed-cover.wide2 {
    max-width: 1100px; }

.movie-embed-wrap {
  position: relative;
  -webkit-box-sizing: content-box !important;
  box-sizing: content-box !important;
  width: 100%;
  height: 0;
  /* 9 / 16 * 100% */
  padding-top: 56.25%; }
  .movie-embed-wrap .movie-embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1; }

/* SP */
@media screen and (max-width: 767px) {
  .movie-embed-cover {
    margin: 15px auto; }

  /*-------------*/ }
/*END 動画*/
.movie-embed-cover-2 {
  max-width: 852px;
  height: auto;
  margin: 30px auto 30px; }
  .movie-embed-cover-2 .movie-embed-wrap-2 > video {
    width: 100%; }

@media screen and (max-width: 767px) {
  .movie-embed-wrap-2 {
    position: relative;
    padding: 0 0 56%;
    height: 0;
    overflow: hidden; }
    .movie-embed-wrap-2 > video {
      position: absolute;
      top: 0;
      left: 0;
      width: 100% !important;
      height: 100% !important; } }
/*END 動画*/
/* 画像モジュール */
.column-img figure {
  line-height: 0;
  margin: 0 auto 30px; }
  .column-img figure p {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.3; }
  .column-img figure img {
    width: 100%; }
.column-img figcaption {
  padding-top: 10px;
  display: block;
  font-size: 12px;
  line-height: 1.2;
  color: #546e7a; }
.column-img > a {
  text-decoration: none; }

.column-img02 figure {
  line-height: 0;
  margin-bottom: 20px; }
  .column-img02 figure p {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.3; }
  .column-img02 figure img {
    width: 100%; }
.column-img02 figcaption {
  padding-top: 10px;
  display: block;
  font-size: 12px;
  line-height: 1.2;
  color: #546e7a; }
.column-img02 > a {
  text-decoration: none; }

.column-img03 {
  margin: 0 -15px; }
  .column-img03 figure {
    line-height: 0;
    margin: 0 auto 30px; }
    .column-img03 figure p {
      font-size: 14px;
      font-weight: bold;
      line-height: 1.3; }
    .column-img03 figure img {
      width: 100%; }
  .column-img03 figcaption {
    padding-top: 10px;
    display: block;
    font-size: 12px;
    line-height: 1.2;
    color: #546e7a; }
  .column-img03 > a {
    text-decoration: none; }

/* SP */
@media screen and (max-width: 767px) {
  .column-img figure {
    margin-bottom: 20px; }

  .column-img02.slick-slider {
    margin: 0 -15px 40px !important; }

  .column-img02 figure.slick-slide {
    margin-bottom: 0; }

  .column-img03 {
    margin: 0 -5px; }

  /*-------------*/ }
/* END 画像モジュール */
/* 画像+テキストモジュール */
.column-text-img {
  margin-bottom: 20px; }

.column-text-img__text *:first-child {
  margin-top: 0 !important; }
.column-text-img__text p:last-child {
  margin-bottom: 0; }

.column-text-img__img figure {
  line-height: 0; }
  .column-text-img__img figure img {
    width: 100%; }
.column-text-img__img figcaption {
  padding-top: 10px;
  display: block;
  font-size: 12px;
  line-height: 1.2;
  color: #546e7a; }

.column-text-img02 {
  margin-bottom: 20px; }
  .column-text-img02 > div.col-md-6 {
    overflow: hidden; }
  .column-text-img02 .column-text-img__img {
    width: 50%;
    padding-right: 10px;
    float: left; }
  .column-text-img02 .column-text-img__text {
    width: 50%;
    padding-left: 10px;
    float: left; }

/* SP */
@media screen and (max-width: 767px) {
  .column-text-img {
    margin-bottom: 0px; }

  .column-text-img__text,
  .column-text-img__img {
    margin-bottom: 20px; }

  .column-text-img.row .col-6 {
    margin-left: auto;
    margin-right: auto; }

  .column-text-img02 {
    margin-bottom: 0px; }
    .column-text-img02 > div.col-md-6 {
      margin-bottom: 30px; }
    .column-text-img02 .column-text-img__img {
      width: 33.3%;
      margin-bottom: 0px; }
    .column-text-img02 .column-text-img__text {
      width: 66.6%;
      margin-bottom: 0px; }

  /*-------------*/ }
/* END 画像+テキストモジュール */
/* anchor_navi(アンカーナビ) */
.anchor_navi li {
  position: relative;
  margin-bottom: 24px; }
  .anchor_navi li a {
    display: table;
    width: 100%;
    height: 42px;
    border-bottom: 2px solid #eceff1;
    color: #546e7a !important;
    text-decoration: none !important;
    line-height: 1.3; }
    .anchor_navi li a span {
      position: relative;
      display: table-cell;
      vertical-align: middle;
      padding-right: 33px; }
      .anchor_navi li a span::after {
        content: ' ';
        position: absolute;
        width: 11px;
        height: 11px;
        border-left: 1px solid #053250;
        border-bottom: 1px solid #053250;
        right: 10px;
        top: 50%;
        margin-top: -6px;
        -webkit-transform: rotate(-45deg) translateY(-50%);
        transform: rotate(-45deg) translateY(-50%); }
    .anchor_navi li a:hover, .anchor_navi li a.current {
      color: #053250;
      border-bottom: 2px solid #053250; }
.anchor_navi.thin li {
  margin-bottom: 10px; }
  .anchor_navi.thin li > a {
    font-size: 14px; }

/* SP */
@media screen and (max-width: 767px) {
  .anchor_navi {
    margin: 0 -15px 40px; }
    .anchor_navi ul {
      position: relative;
      display: flex;
      flex-wrap: wrap;
      margin: 0 !important;
      border-top: 1px solid #eeeeee; }
      .anchor_navi ul::after {
        content: " ";
        width: 100%;
        height: 1px;
        background: #eee;
        position: absolute;
        bottom: 0px;
        left: 0;
        z-index: 2; }
    .anchor_navi li {
      width: 50%;
      margin-bottom: 0px;
      padding: 0 !important;
      font-size: 12px; }
      .anchor_navi li a {
        border: none;
        border-bottom: 1px solid #eeeeee !important;
        padding: 0;
        height: 46px; }
        .anchor_navi li a span {
          padding: 0 30px 0 15px; }
          .anchor_navi li a span::after {
            width: 8px;
            height: 8px;
            right: 10px;
            margin-top: -4px; }
    .anchor_navi li:nth-of-type(2n-1) a {
      border-right: 1px solid #eeeeee; }
    .anchor_navi.thin li {
      margin-bottom: 0; }
      .anchor_navi.thin li > a {
        font-size: 12px; }

  /*-------------*/ }
/* END anchor_navi(アンカーナビ) */
/* project-point(4つのプロジェクト) */
.project-point__list {
  background-color: #fff; }
  .project-point__list li {
    margin-bottom: 30px; }
  .project-point__list a {
    position: relative;
    display: block;
    height: 285px;
    text-align: center;
    padding: 45px 0 0;
    line-height: 1;
    color: #fff !important;
    overflow: hidden;
    text-decoration: none;
    -webkit-transition: opacity 0.40s ease-out;
    transition: opacity 0.40s ease-out; }
    .project-point__list a:hover {
      opacity: .7; }

.project-point__list-box {
  display: block;
  position: relative;
  z-index: 100; }
  .project-point__list-box h3 {
    font-size: 18px;
    display: block;
    margin-bottom: 15px;
    letter-spacing: 2px; }
  .project-point__list-box h2 {
    font-size: 26px;
    font-weight: bold;
    margin-bottom: 35px;
    letter-spacing: 1px;
    white-space: nowrap; }
  .project-point__list-box p {
    font-size: 15px;
    margin-bottom: 35px; }

.project-point__list-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background-size: cover !important;
  /**/
  -webkit-transition: all 0.40s ease-out;
  transition: all 0.40s ease-out; }

.project-point__list a:hover .project-point__list-bg {
  -webkit-transform: scale(1.2);
  transform: scale(1.2); }

.project-point__btn span {
  position: relative;
  display: block;
  margin: 0 auto;
  width: 240px;
  height: 40px;
  padding-top: 12px;
  border: 1px solid #fff;
  border-radius: 40px;
  text-align: center;
  font-size: 14px;
  color: #fff;
  background: url(/common/images/icon_other_link02_w.svg) calc(100% - 38px) 50% no-repeat;
  background-size: 10px 10px; }

#project01 {
  background: #00a496; }
  #project01 .project-point__list-bg {
    background: url(/common/images/project_bg01.jpg) 50% 50% no-repeat; }
  #project01:hover .project-point__btn span {
    color: #00a496;
    background: #fff url(/common/images/icon_other_link02_gr.svg) calc(100% - 38px) 50% no-repeat;
    background-size: 10px 10px; }

#project02 {
  background: #0093d4; }
  #project02 .project-point__list-bg {
    background: url(/common/images/project_bg02.jpg) 50% 50% no-repeat; }
  #project02:hover .project-point__btn span {
    color: #0093d4;
    background: #fff url(/common/images/icon_other_link02_bl.svg) calc(100% - 38px) 50% no-repeat;
    background-size: 10px 10px; }

#project03 {
  background: #f29600; }
  #project03 .project-point__list-bg {
    background: url(/common/images/project_bg03.jpg) 50% 50% no-repeat; }
  #project03:hover .project-point__btn span {
    color: #f29600;
    background: #fff url(/common/images/icon_other_link02_y.svg) calc(100% - 38px) 50% no-repeat;
    background-size: 10px 10px; }

#project04 {
  background: #b84c97; }
  #project04 .project-point__list-bg {
    background: url(/common/images/project_bg04.jpg) 50% 50% no-repeat; }
  #project04:hover .project-point__btn span {
    color: #b84c97;
    background: #fff url(/common/images/icon_other_link02_pur.svg) calc(100% - 38px) 50% no-repeat;
    background-size: 10px 10px; }

/* SP */
@media screen and (max-width: 767px) {
  .project-point__list {
    margin: 30px 0; }
    .project-point__list li {
      margin-bottom: 10px; }
    .project-point__list a {
      height: auto;
      min-height: 172px;
      padding: 25px 0 0; }

  .project-point__list-box h3 {
    font-size: 14px;
    margin-bottom: 10px; }
  .project-point__list-box h2 {
    font-size: 20px;
    margin-bottom: 15px; }
  .project-point__list-box p {
    font-size: 12px;
    margin-bottom: 18px; }

  .project-point__btn span {
    width: 180px;
    height: 30px;
    padding-top: 8px;
    border-radius: 30px;
    font-size: 10px;
    background-position: calc(100% - 32px) 50% !important; }

  /*-------------*/ }
/* END project-point(4つのプロジェクト) */
/* バナー系 */
.box-banner01 {
  margin-bottom: 60px; }
  .box-banner01 a {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    background: #fff;
    border: 1px solid #eeeeee;
    text-decoration: none !important; }
    .box-banner01 a dl {
      width: 50%;
      height: 300px;
      color: #053250;
      text-align: center;
      padding: 4% 5px 0; }
      .box-banner01 a dl dt {
        font-size: 36px;
        line-height: 1.5;
        letter-spacing: 0.15em; }
        .box-banner01 a dl dt > span {
          margin: 7px 0 0;
          display: block;
          font-size: 15px;
          letter-spacing: 0.1em; }
      .box-banner01 a dl dd {
        padding-top: 4.4%; }
        .box-banner01 a dl dd > span {
          position: relative;
          display: block;
          max-width: 240px;
          margin: 0 auto;
          height: 40px;
          padding-top: 12px;
          letter-spacing: 0.05em;
          border: 1px solid #053250;
          border-radius: 40px;
          text-align: center;
          font-size: 14px;
          line-height: 1; }
          .box-banner01 a dl dd > span:after {
            position: absolute;
            top: 50%;
            right: 22px;
            width: 7px;
            height: 7px;
            margin-top: -4px;
            border-right: 1px solid #053250;
            border-bottom: 1px solid #053250;
            transform: rotate(-45deg);
            content: ""; }
    .box-banner01 a p {
      width: 50%;
      height: 300px;
      text-align: center;
      font-size: 24px;
      line-height: 1.8;
      color: #fff;
      padding-top: 115px;
      background-position: 50% 50%;
      background-repeat: no-repeat;
      background-size: cover;
      margin: 0; }
      .box-banner01 a p img {
        vertical-align: middle; }
    .box-banner01 a:hover {
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.15);
      opacity: 0.85; }
  .box-banner01.min a dl {
    padding: 5% 5px 0;
    height: 240px; }
    .box-banner01.min a dl dt {
      font-size: 32px;
      letter-spacing: 0.12em; }
  .box-banner01.min a p {
    height: 240px; }

@media screen and (max-width: 995px) {
  .box-banner01 a dl dt {
    font-size: 30px; }
    .box-banner01 a dl dt > span {
      font-size: 11px; }
  .box-banner01 a dl dd > span {
    font-size: 11px;
    max-width: 210px;
    height: 35px;
    padding-top: 10px; } }
@media screen and (max-width: 767px) {
  .box-banner01 {
    margin-bottom: 40px; }
    .box-banner01 a dl {
      order: 2;
      width: 100%;
      height: auto;
      text-align: center;
      padding: 20px 5px 20px; }
      .box-banner01 a dl dt {
        font-size: 22px;
        line-height: 1.2; }
        .box-banner01 a dl dt > span {
          font-size: 10px; }
      .box-banner01 a dl dd {
        padding-top: 13px; }
        .box-banner01 a dl dd > span {
          width: 180px;
          height: 30px;
          padding-top: 9px;
          border-radius: 30px;
          font-size: 10px; }
          .box-banner01 a dl dd > span:after {
            top: 50%;
            right: 12px;
            width: 5px;
            height: 5px;
            margin-top: -3px; }
    .box-banner01 a p {
      order: 1;
      width: 100%;
      height: 125px;
      font-size: 16px;
      padding-top: 35px; }
    .box-banner01.min a dl {
      height: 140px; }
      .box-banner01.min a dl dt {
        font-size: 20px;
        letter-spacing: 0.15em; }
    .box-banner01.min a p {
      height: 140px; } }
/* END バナー系 */
/* その他
----------------------------------------------------------- */
.icon-category-wrap {
  line-height: 1;
  margin-bottom: 15px; }

.icon-category {
  background: #eceff1;
  color: #212121;
  font-size: 10px;
  padding: 3px 13px;
  display: inline-block;
  line-height: 1.1; }
  .icon-category.bg_orange {
    color: #ffffff;
    background: #f29600; }
  .icon-category.bg_gray {
    color: #ffffff;
    background: #546e7a; }

.icon-category-wrap + .ttl-type01 {
  margin-top: 0; }

hr.line-type01 {
  border: none;
  border-bottom: 1px solid #eeeeee;
  margin: 20px 0; }

.label01 {
  display: inline-block;
  border: 1px solid #EEEEEE;
  background-color: #ffffff;
  color: #FF0000;
  margin-left: 10px;
  margin-right: 10px;
  line-height: 1.3;
  font-size: 15px;
  padding: 2px 10px; }

@media screen and (max-width: 767px) {
  .label01 {
    font-size: 12px;
    padding: 0 4px; } }
.photo_label {
  background-color: #053250;
  font-size: 12px;
  line-height: 1.2;
  letter-spacing: 0.05em;
  text-decoration: none;
  min-width: 65px;
  padding: 3px 10px;
  height: 20px;
  border-radius: 10px;
  color: #FFFFFF !important;
  margin: 0 0 0 15px;
  vertical-align: middle;
  display: inline-block;
  text-align: center; }

@media screen and (max-width: 767px) {
  .photo_label {
    font-size: 10px;
    min-width: 60px;
    margin: 0 0 0 10px;
    padding: 4px 12px 0; } }
/* form 関係
----------------------------------------------------------- */
/* MODAL 関係
----------------------------------------------------------- */
/*
	File Name   : page.scss
	Description : 各コンテンツページ用

	00.共通
	01.建築作品集
	02.建築作品集(詳細)
	03.Award(受賞履歴)
	04.沿革

	**.～
*/
/* PC */
@media screen and (min-width: 768px) {
  /*-------------*/ }
/* SP */
@media screen and (max-width: 767px) {
  /*-------------*/ }
/*------------------------------------------------------*/
/* 00.共通
----------------------------------------------------------- */
/* 01.建築作品集
----------------------------------------------------------- */
#relation-slide,
#relation-slide02 {
  margin: 0 -15px;
  padding-bottom: 40px; }
  #relation-slide .slides .slides__item,
  #relation-slide02 .slides .slides__item {
    padding: 0 15px; }
    #relation-slide .slides .slides__item a,
    #relation-slide02 .slides .slides__item a {
      background: #fff; }
  #relation-slide .slick-list,
  #relation-slide02 .slick-list {
    padding: 5px 0; }

.special-photo-item-wrap {
  margin-bottom: 80px; }
  .special-photo-item-wrap .special-photo-item a {
    border: none !important;
    color: #fff; }
    .special-photo-item-wrap .special-photo-item a:hover dl {
      opacity: 0.85; }
  .special-photo-item-wrap .special-photo-item figure {
    line-height: 0; }
    .special-photo-item-wrap .special-photo-item figure img {
      width: 100%; }
  .special-photo-item-wrap .special-photo-item dl {
    padding: 15px 145px 15px 15px;
    background: #212121;
    color: #fff;
    position: relative; }
    .special-photo-item-wrap .special-photo-item dl dt {
      line-height: 1;
      font-size: 32px;
      font-weight: normal;
      letter-spacing: 2px;
      margin-bottom: 3px;
      word-break: break-word;
      overflow-wrap: break-word; }
    .special-photo-item-wrap .special-photo-item dl dd {
      line-height: 1;
      font-size: 15px; }
    .special-photo-item-wrap .special-photo-item dl dd.more-text {
      position: absolute;
      top: 50%;
      right: 20px;
      margin-top: -0.5em;
      font-size: 14px;
      padding-right: 15px; }
      .special-photo-item-wrap .special-photo-item dl dd.more-text::after {
        position: absolute;
        top: 50%;
        right: 0px;
        width: 7px;
        height: 7px;
        margin-top: -4px;
        border-right: 1px solid #fff;
        border-bottom: 1px solid #fff;
        transform: rotate(-45deg);
        content: ""; }
  .special-photo-item-wrap .special-photo-item:first-child dl {
    background: #053250; }

/* SP */
@media screen and (max-width: 767px) {
  #relation-slide,
  #relation-slide02 {
    margin: 0 -15px;
    padding-bottom: 10px; }
    #relation-slide .slides .slides__item,
    #relation-slide02 .slides .slides__item {
      padding: 0 5px; }

  .special-photo-item-wrap {
    margin-bottom: 30px; }
    .special-photo-item-wrap .special-photo-item {
      margin-bottom: 10px; }
      .special-photo-item-wrap .special-photo-item dl {
        padding: 10px; }
        .special-photo-item-wrap .special-photo-item dl dt {
          font-size: 21px;
          margin-bottom: 3px; }
        .special-photo-item-wrap .special-photo-item dl dd {
          font-size: 10px; }
        .special-photo-item-wrap .special-photo-item dl dd.more-text {
          right: 13px;
          margin-top: -0.5em;
          font-size: 12px;
          padding-right: 12px; }

  /*-------------*/ }
/* 02.建築作品集(詳細)
----------------------------------------------------------- */
.building-detail-box {
  border-bottom: 1px solid #eeeeee;
  margin-bottom: 40px; }
  .building-detail-box p {
    font-size: 15px;
    margin-bottom: 30px;
    line-height: 1.7; }

.box-inner02 .building-detail-box:last-child {
  margin-bottom: 80px; }

.building-detail-tbl {
  display: flex;
  flex-wrap: wrap;
  border-left: 1px solid #eeeeee;
  border-top: 1px solid #eeeeee;
  margin-bottom: 40px; }
  .building-detail-tbl dl {
    width: 50%;
    display: table;
    border-bottom: 1px solid #eeeeee;
    border-right: 1px solid #eeeeee; }
    .building-detail-tbl dl dt {
      display: table-cell;
      width: 110px;
      font-size: 14px;
      color: #546e7a;
      font-weight: bold;
      text-align: left;
      background: #fafafa;
      padding: 13px 10px; }
    .building-detail-tbl dl dd {
      display: table-cell;
      padding: 13px 10px;
      font-size: 15px;
      background: #fff; }

#building-detail_photo {
  position: relative;
  margin-bottom: 30px; }
  #building-detail_photo .slick-counter {
    display: none; }
  #building-detail_photo .slides li {
    outline: 0; }
    #building-detail_photo .slides li .building-detail_photo__ph {
      display: table;
      width: 100%;
      height: 637px; }
      #building-detail_photo .slides li .building-detail_photo__ph span {
        display: table-cell;
        vertical-align: top;
        height: 637px;
        width: 100%;
        text-align: center; }
        #building-detail_photo .slides li .building-detail_photo__ph span img {
          max-width: 100%;
          max-height: 637px;
          width: auto;
          margin: 0 auto; }
  #building-detail_photo .slick-prev {
    left: -100px; }
  #building-detail_photo .slick-next {
    right: -100px; }

.building-detail_photo__text {
  font-size: 13px;
  padding-top: 12px;
  color: #546e7a;
  margin: 0; }

/* PC */
@media screen and (max-width: 1170px) {
  #building-detail_photo .slick-prev {
    left: -70px; }
  #building-detail_photo .slick-next {
    right: -70px; } }
@media screen and (max-width: 1110px) {
  #building-detail_photo .slick-prev {
    left: -40px; }
  #building-detail_photo .slick-next {
    right: -40px; }

  /*-------------*/ }
/* PC */
@media screen and (min-width: 768px) {
  #building-detail_thumb .slides li {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    /**/
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease; }

  /*-------------*/ }
#building-detail_thumb {
  border-bottom: 1px solid #eeeeee;
  padding-bottom: 10px;
  margin-bottom: 40px; }
  #building-detail_thumb .slick-track {
    transform: none !important;
    width: 100% !important; }
  #building-detail_thumb .slides {
    margin-right: -30px; }
    #building-detail_thumb .slides li {
      width: 95px;
      outline: 0;
      margin-right: 30px;
      margin-bottom: 20px; }
      #building-detail_thumb .slides li:hover {
        opacity: 0.8; }
      #building-detail_thumb .slides li .building-detail_thumb__ph {
        cursor: pointer;
        border: 1px solid #eeeeee;
        display: table;
        width: 95px;
        height: 95px; }
        #building-detail_thumb .slides li .building-detail_thumb__ph span {
          display: table-cell;
          vertical-align: middle;
          height: 95px;
          width: 95px;
          text-align: center; }
          #building-detail_thumb .slides li .building-detail_thumb__ph span img {
            max-width: 95px;
            max-height: 95px;
            width: auto;
            margin: 0 auto; }

/* SP */
@media screen and (max-width: 767px) {
  .building-detail-box {
    border-bottom: 1px solid #eeeeee;
    margin-bottom: 20px; }
    .building-detail-box p {
      font-size: 14px;
      margin-bottom: 20px; }

  .box-inner02 .building-detail-box:last-child {
    margin-bottom: 40px;
    border-bottom: none; }

  .building-detail-tbl {
    display: block;
    margin-bottom: 20px; }
    .building-detail-tbl dl {
      width: 100%;
      height: auto !important; }
      .building-detail-tbl dl dt {
        width: 110px;
        font-size: 12px;
        padding: 10px; }
      .building-detail-tbl dl dd {
        padding: 10px;
        font-size: 12px; }

  #building-detail_photo {
    overflow: hidden;
    margin: 0 -15px 20px;
    border-bottom: 1px solid #eeeeee;
    padding-bottom: 10px; }
    #building-detail_photo .slick-counter {
      display: block;
      position: absolute;
      top: 10px;
      right: 10px;
      z-index: 100;
      min-height: 20px;
      border-radius: 20px;
      background: rgba(5, 50, 80, 0.8);
      color: #fff;
      text-align: center;
      padding: 3px 15px;
      font-size: 10px; }
    #building-detail_photo .slides li {
      outline: 0; }
      #building-detail_photo .slides li .building-detail_photo__ph {
        display: table;
        width: 100%;
        height: 270px; }
        #building-detail_photo .slides li .building-detail_photo__ph span {
          display: table-cell;
          vertical-align: top;
          height: 270px;
          text-align: center; }
          #building-detail_photo .slides li .building-detail_photo__ph span img {
            max-width: 100%;
            max-height: 270px;
            width: auto;
            margin: 0 auto; }
    #building-detail_photo .slick-prev {
      left: 0px;
      width: 40px;
      height: 30px;
      margin-top: -30px;
      background: rgba(5, 50, 80, 0.8); }
      #building-detail_photo .slick-prev::after {
        width: 11px;
        height: 11px;
        border-left: 1px solid #fff;
        border-bottom: 1px solid #fff;
        left: 10px;
        margin-top: -2px; }
    #building-detail_photo .slick-next {
      right: 0px;
      width: 40px;
      height: 30px;
      margin-top: -30px;
      background: rgba(5, 50, 80, 0.8); }
      #building-detail_photo .slick-next::after {
        width: 11px;
        height: 11px;
        border-right: 1px solid #fff;
        border-bottom: 1px solid #fff;
        right: 10px;
        margin-top: -2px; }

  .building-detail_photo__text {
    font-size: 12px;
    padding: 10px 15px 0;
    margin-bottom: 10px; }

  #building-detail_thumb {
    display: none; }

  /*-------------*/ }
/* SP */
@media screen and (max-width: 380px) {
  #building-detail_photo .slides li .building-detail_photo__ph {
    height: 250px; }
    #building-detail_photo .slides li .building-detail_photo__ph span {
      height: 250px; }
      #building-detail_photo .slides li .building-detail_photo__ph span img {
        max-height: 250px; } }
/* 03.Award(受賞履歴)
----------------------------------------------------------- */
.award-accordion-btn {
  margin-bottom: 20px;
  cursor: pointer;
  color: #546e7a;
  font-size: 16px;
  line-height: 1;
  padding: 22px 20px;
  border: 1px solid #eeeeee;
  background: #fafafa url(/common/images/icon_plus.svg) calc(100% - 15px) 50% no-repeat;
  background-size: 20px 20px; }
  .award-accordion-btn.open {
    background: #fafafa url(/common/images/icon_minus.svg) calc(100% - 15px) 50% no-repeat;
    background-size: 20px 20px; }

.award-accordion-body {
  display: none; }

.award-box {
  padding: 20px 0 40px; }
  .award-box .award-box__pickup .award-box__pickup__inner {
    display: table;
    width: 270px;
    margin: 0 auto;
    max-width: 100%; }
    .award-box .award-box__pickup .award-box__pickup__inner figure {
      line-height: 0;
      margin-bottom: 15px; }
    .award-box .award-box__pickup .award-box__pickup__inner dl {
      word-break: break-all; }
      .award-box .award-box__pickup .award-box__pickup__inner dl dt {
        font-size: 16px;
        font-weight: bold;
        margin-bottom: 10px; }
      .award-box .award-box__pickup .award-box__pickup__inner dl dd {
        line-height: 1.7; }
  .award-box .award-box__other ul li {
    line-height: 1.4; }
    .award-box .award-box__other ul li > div {
      border-bottom: 1px solid #eeeeee;
      display: flex;
      flex-wrap: wrap;
      padding: 20px 0;
      height: 100%;
      width: 100%; }
    .award-box .award-box__other ul li:nth-child(-n+2) > div {
      border-top: 1px solid #eeeeee; }
    .award-box .award-box__other ul li figure {
      width: 40px;
      margin-right: 30px;
      line-height: 0; }
    .award-box .award-box__other ul li dl {
      width: calc(100% - 90px); }
      .award-box .award-box__other ul li dl dt {
        font-size: 14px; }
      .award-box .award-box__other ul li dl dd {
        font-size: 14px; }
        .award-box .award-box__other ul li dl dd a {
          color: #053250;
          text-decoration: underline; }

/* SP */
@media screen and (max-width: 767px) {
  .award-accordion-btn {
    margin-bottom: 10px;
    font-size: 14px;
    padding: 15px 10px;
    border: none; }

  .award-box {
    padding: 10px 15px 30px; }
    .award-box .award-box__pickup {
      padding-bottom: 15px; }
      .award-box .award-box__pickup .award-box__pickup__inner {
        display: table;
        width: 100%; }
        .award-box .award-box__pickup .award-box__pickup__inner figure {
          line-height: 0;
          margin-bottom: 15px; }
          .award-box .award-box__pickup .award-box__pickup__inner figure img {
            width: 100%; }
        .award-box .award-box__pickup .award-box__pickup__inner dl dt {
          font-size: 14px;
          margin-bottom: 10px; }
        .award-box .award-box__pickup .award-box__pickup__inner dl dd {
          font-size: 14px; }
    .award-box .award-box__other ul li > div {
      padding: 15px 0; }
    .award-box .award-box__other ul li:nth-child(-n+2) > div {
      border-top: none; }
    .award-box .award-box__other ul li:first-child > div {
      border-top: 1px solid #eeeeee; }
    .award-box .award-box__other ul li dl {
      width: calc(100% - 90px); }
      .award-box .award-box__other ul li dl dt {
        font-size: 12px;
        margin-bottom: 5px; }
      .award-box .award-box__other ul li dl dd {
        font-size: 12px; }

  /*-------------*/ }
/* 04.沿革
----------------------------------------------------------- */
.history-box-wrap {
  margin-bottom: 80px; }

.history-box__ttl {
  position: absolute;
  top: 35px;
  right: 50%;
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
  color: #546e7a;
  padding-right: 20px; }
  .history-box__ttl::before {
    content: " ";
    display: block;
    position: absolute;
    top: 50%;
    right: -7px;
    margin-top: -8px;
    width: 14px;
    height: 14px;
    border-radius: 100%;
    background: #546e7a; }

.history-box {
  position: relative;
  background: url(/architect/profile/img/history/line_bg.png) 50% 0 repeat-y;
  padding: 80px 0 40px; }
  .history-box .history-box__pickup {
    padding: 0 30px; }
    .history-box .history-box__pickup .history-box__pickup__inner {
      display: table;
      margin: 0 auto;
      max-width: 370px; }
      .history-box .history-box__pickup .history-box__pickup__inner h4 {
        font-size: 14px;
        line-height: 1;
        font-weight: bold;
        color: #546e7a;
        margin-bottom: 15px; }
      .history-box .history-box__pickup .history-box__pickup__inner figure {
        line-height: 0;
        margin-bottom: 20px; }
      .history-box .history-box__pickup .history-box__pickup__inner dl {
        word-break: break-all; }
        .history-box .history-box__pickup .history-box__pickup__inner dl dt {
          font-size: 18px;
          font-weight: bold;
          margin-bottom: 15px; }
        .history-box .history-box__pickup .history-box__pickup__inner dl dd {
          line-height: 1.7; }
  .history-box .history-box__other {
    padding-top: 30px; }
    .history-box .history-box__other dl {
      position: relative;
      margin-left: -15px;
      padding-left: 60px;
      display: flex;
      align-items: center;
      margin-bottom: 20px; }
      .history-box .history-box__other dl::before {
        content: " ";
        display: block;
        position: absolute;
        top: 50%;
        left: -3px;
        margin-top: -3px;
        width: 6px;
        height: 6px;
        border-radius: 100%;
        background: #546e7a; }
      .history-box .history-box__other dl dt {
        font-size: 14px;
        order: 2;
        min-width: 80px;
        max-width: 80px;
        color: #546e7a;
        font-weight: bold;
        font-size: 14px; }
      .history-box .history-box__other dl dd {
        font-size: 14px;
        order: 3; }
      .history-box .history-box__other dl dd.history-box__other__img {
        order: 1;
        min-width: 40px;
        max-width: 40px;
        margin-right: 27px;
        line-height: 0; }

/* SP */
@media screen and (max-width: 767px) {
  .history-box-wrap {
    margin-bottom: 40px; }

  .history-box__ttl {
    position: relative;
    top: inherit;
    right: inherit;
    font-size: 16px;
    padding-right: 0px;
    padding-left: 25px;
    margin-bottom: 30px; }
    .history-box__ttl::before {
      right: inherit;
      left: 0;
      margin-top: -6px;
      width: 12px;
      height: 12px; }

  .history-box {
    position: relative;
    background: url(/architect/profile/img/history/line_bg.png) 0 0 repeat-y;
    padding: 40px 0 0px; }
    .history-box .history-box__pickup {
      padding: 0 5px 0 25px; }
      .history-box .history-box__pickup .history-box__pickup__inner {
        display: table;
        margin: 0 auto;
        max-width: inherit;
        width: 100%; }
        .history-box .history-box__pickup .history-box__pickup__inner h4 {
          font-size: 12px;
          margin-bottom: 10px; }
        .history-box .history-box__pickup .history-box__pickup__inner figure {
          line-height: 0;
          margin-bottom: 0px; }
          .history-box .history-box__pickup .history-box__pickup__inner figure.history-box__pickup__no-img {
            border: none;
            border-bottom: 1px solid #eeeeee;
            padding-top: 1px; }
          .history-box .history-box__pickup .history-box__pickup__inner figure img {
            width: 100%; }
        .history-box .history-box__pickup .history-box__pickup__inner dl {
          background: #fafafa;
          border: 1px solid #eeeeee;
          border-top: none;
          padding: 15px; }
          .history-box .history-box__pickup .history-box__pickup__inner dl dt {
            font-size: 14px;
            margin-bottom: 10px; }
          .history-box .history-box__pickup .history-box__pickup__inner dl dd {
            line-height: 1.7; }
    .history-box .history-box__other {
      padding-top: 30px; }
      .history-box .history-box__other dl {
        margin-left: 0px;
        padding-left: 20px;
        margin-bottom: 20px; }
        .history-box .history-box__other dl dt {
          font-size: 12px;
          min-width: 65px;
          max-width: 65px;
          line-height: 1.4; }
        .history-box .history-box__other dl dd {
          font-size: 12px;
          line-height: 1.4; }
        .history-box .history-box__other dl dd.history-box__other__img {
          margin-right: 13px; }

  /*-------------*/ }
/* **.TITLE
----------------------------------------------------------- */
/*
	File Name   : module.scss
	Description : 共通モジュールcss
*/
/* common
----------------------------------------------- */
.pos-rela {
  position: relative !important; }

.flex-box {
  display: flex !important;
  flex-wrap: wrap; }

.flex-item {
  width: 100%; }

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

th img,
td img {
  max-width: inherit;
  height: inherit; }

.img_auto {
  width: auto !important;
  max-width: 100% !important; }

.cl {
  clear: both; }

.none {
  display: none !important; }

.ov-f_hidden {
  overflow: hidden; }

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

.cf:after {
  clear: both; }

/* font系 */
.bold {
  font-weight: bold !important; }

.normal {
  font-weight: normal !important; }

.text-col00 {
  color: #000 !important; }

.text-col01 {
  color: #cc0000 !important; }

.text-col02 {
  color: #546e7a !important; }

.text-col03 {
  color: #212121 !important; }

/* 背景color */
.bg-col00 {
  background: #fff !important; }

.bg-col01 {
  background: #f5f7f8 !important; }

/*line-height*/
.line-h10 {
  line-height: 1 !important; }

.line-h12 {
  line-height: 1.2 !important; }

.line-h15 {
  line-height: 1.5 !important; }

.line-h20 {
  line-height: 2 !important; }

/* PC
----------------------------------------------- */
@media screen and (min-width: 768px) {
  /**/
  a {
    		/*
    		-webkit-backface-visibility: hidden;
        	backface-visibility: hidden;
    		*/
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease; }

  a img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    /**/
    -webkit-transition: 0.3s ease;
    transition: 0.3s ease; }

  a:hover img {
    opacity: 0.7; }

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

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

  .align-l {
    text-align: left !important; }

  .fl-l {
    float: left; }

  .fl-r {
    float: right; }

  /* view */
  .sp-view {
    display: none; }

  /* font-size */
  .fs9 {
    font-size: 9px !important; }

  .fs10 {
    font-size: 10px !important; }

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

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

  .fs13 {
    font-size: 13px !important; }

  .fs14 {
    font-size: 14px !important; }

  .fs15 {
    font-size: 15px !important; }

  .fs16 {
    font-size: 16px !important; }

  .fs17 {
    font-size: 17px !important; }

  .fs18 {
    font-size: 18px !important; }

  .fs19 {
    font-size: 19px !important; }

  .fs20 {
    font-size: 20px !important; }

  .fs21 {
    font-size: 21px !important; }

  .fs22 {
    font-size: 22px !important; }

  .fs23 {
    font-size: 23px !important; }

  .fs24 {
    font-size: 24px !important; }

  /* margin-top */
  .mt50_minus {
    margin-top: -50px !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  /* margin-right */
  .mr0 {
    margin-right: 0   !important; }

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

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

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

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

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

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

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

  /* margin-left */
  .ml0 {
    margin-left: 0   !important; }

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

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

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

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

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

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

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

  /* padding-top */
  .pt0 {
    padding-top: 0   !important; }

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

  .pt8 {
    padding-top: 8px !important; }

  .pt18 {
    padding-top: 18px !important; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  /* padding-right */
  .pr0 {
    padding-right: 0   !important; }

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

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

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

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

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

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

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

  /* padding-left */
  .pl0 {
    padding-left: 0   !important; }

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

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

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

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

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

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

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

  /* width-size px */
  .w90 {
    width: 90px !important; }

  .w300 {
    width: 300px !important; }

  .w400 {
    width: 400px !important; }

  .w500 {
    width: 500px !important; }

  /* width-size % */
  .w100p {
    width: 100% !important; }

  .w75p {
    width: 75% !important; }

  .w50p {
    width: 50% !important; }

  .w25p {
    width: 25% !important; }

  .w10p {
    width: 10% !important; } }
/* SP
----------------------------------------------- */
@media screen and (max-width: 767px) {
  /* view */
  .sp-view {
    display: block !important; }

  .pc-view {
    display: none !important; }

  /**/
  .align-r_sp {
    text-align: right !important; }

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

  .align-l_sp {
    text-align: left !important; }

  .fl-l_sp {
    float: left; }

  .fl-r_sp {
    float: right; }

  /* font-size */
  .fs8_sp {
    font-size: 8px !important; }

  .fs9_sp {
    font-size: 9px !important; }

  .fs10_sp {
    font-size: 10px !important; }

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

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

  .fs13_sp {
    font-size: 13px !important; }

  .fs14_sp {
    font-size: 14px !important; }

  .fs15_sp {
    font-size: 15px !important; }

  .fs16_sp {
    font-size: 16px !important; }

  .fs17_sp {
    font-size: 17px !important; }

  .fs18_sp {
    font-size: 18px !important; }

  .fs19_sp {
    font-size: 19px !important; }

  .fs20_sp {
    font-size: 20px !important; }

  .fs21_sp {
    font-size: 21px !important; }

  .fs22_sp {
    font-size: 22px !important; }

  .fs23_sp {
    font-size: 23px !important; }

  .fs24_sp {
    font-size: 24px !important; }

  /* margin-top */
  .mt50_minus_sp {
    margin-top: -50px !important; }

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

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

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

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

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

  .mt0_sp {
    margin-top: 0   !important; }

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

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

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

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

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

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

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

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

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

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

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

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

  /* margin-bottom */
  .mb0_sp {
    margin-bottom: 0   !important; }

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

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

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

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

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

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

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

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

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

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

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

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

  /* margin-right */
  .mr10_sp_minus {
    margin-right: -10px   !important; }

  .mr0_sp {
    margin-right: 0   !important; }

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

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

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

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

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

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

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

  /* margin-left */
  .ml0_sp {
    margin-left: 0   !important; }

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

  .ml7_sp {
    margin-left: 7px !important; }

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

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

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

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

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

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

  /* padding-top */
  .pt0_sp {
    padding-top: 0   !important; }

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

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

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

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

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

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

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

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

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

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

  /* padding-bottom */
  .pb0_sp {
    padding-bottom: 0   !important; }

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

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

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

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

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

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

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

  /* padding-right */
  .pr0_sp {
    padding-right: 0   !important; }

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

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

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

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

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

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

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

  /* padding-left */
  .pl0_sp {
    padding-left: 0   !important; }

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

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

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

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

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

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

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

  /* width-size % */
  .w100p_sp {
    width: 100% !important; }

  .w75p_sp {
    width: 75% !important; }

  .w50p_sp {
    width: 50% !important; }

  .w25p_sp {
    width: 25% !important; }

  .w10p_sp {
    width: 10% !important; }

  /* flex-order */
  .order1_sp {
    order: 1 !important; }

  .order2_sp {
    order: 2 !important; }

  .order3_sp {
    order: 3 !important; }

  .order4_sp {
    order: 4 !important; }

  .order5_sp {
    order: 5 !important; } }


  /* table align 190419 */
@media screen and (min-width: 768px) {
	.align-t {
		vertical-align: top !important;
	}
	.align-m {
		vertical-align: middle !important;
	}
	.align-b {
		vertical-align: bottom !important;
	}
}

@media screen and (max-width: 767px) {
	.align-t_sp {
		vertical-align: top !important;
	}
	.align-m_sp {
		vertical-align: middle !important;
	}
	.align-b_sp {
		vertical-align: bottom !important;
	}
}

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