@charset "utf-8";
@media screen and (min-width: 1201px) { html{font-size:16px; } }@media screen and (max-width: 1200px) { html{font-size:15px; } }@media screen and (max-width: 1024px) { html{font-size:14px; } }@media screen and (max-width: 768px) {  html{font-size:13px; } }@media screen and (max-width: 480px) {  html{font-size:12px; } }a,a:visited,a:active { color:rgba(51,51,51,1.00)}a:hover { color:rgba(186,186,186,1.00)}
/* css setting */
@charset "UTF-8";
/*デフォルト*/
a {
  text-decoration: none;
}

.hover_opacity:hover {
  opacity: 0.85;
  -webkit-transition: 0.6s;
  transition: 0.6s;
}

.letter-spacing {
  letter-spacing: 0.3rem;
}
]
.opacity {
  opacity: 0.9;
}

.position-relative {
  position: relative;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}

.h-100 {
  height: 100%;
}

.d-none {
  display: none !important;
}

.border-radius-0 {
  border-radius: 0 !important;
}

.aspect-ratio-16-9 {
  aspect-ratio: 16/9;
}
.aspect-ratio-16-9 > img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.aspect-ratio-1-1 {
  aspect-ratio: 1;
}
.aspect-ratio-1-1 > img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}

.z-index-1 {
  z-index: 1;
}

/* .tb-order-childrens や display:flex直下等で使う */
.order-1 {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
          order: 1;
}

.order-2 {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
          order: 2;
}

.order-3 {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
          order: 3;
}

.order-4 {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
          order: 4;
}

.order-5 {
  -webkit-box-ordinal-group: 6;
  -webkit-order: 5;
          order: 5;
}

.order-6 {
  -webkit-box-ordinal-group: 7;
  -webkit-order: 6;
          order: 6;
}

.order-7 {
  -webkit-box-ordinal-group: 8;
  -webkit-order: 7;
          order: 7;
}

.order-8 {
  -webkit-box-ordinal-group: 9;
  -webkit-order: 8;
          order: 8;
}

.order-9 {
  -webkit-box-ordinal-group: 10;
  -webkit-order: 9;
          order: 9;
}

.order-10 {
  -webkit-box-ordinal-group: 11;
  -webkit-order: 10;
          order: 10;
}

.ccm-layout-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  gap: 0 2%;
}
.ccm-layout-row:has(div[class^=gridN]), .ccm-layout-row:has(div[class^=r-gridN]) {
  gap: 0;
}
.ccm-layout-row .ccm-spacer {
  display: contents;
}
.ccm-layout-row .gridN1, .ccm-layout-row .gridN2, .ccm-layout-row .gridN3, .ccm-layout-row .gridN4, .ccm-layout-row .gridN5, .ccm-layout-row .gridN6, .ccm-layout-row .gridN7, .ccm-layout-row .gridN8, .ccm-layout-row .gridN9, .ccm-layout-row .gridN10, .ccm-layout-row .gridN11, .ccm-layout-row .gridN12, .ccm-layout-row .r-gridN1, .ccm-layout-row .r-gridN2, .ccm-layout-row .r-gridN3, .ccm-layout-row .r-gridN4, .ccm-layout-row .r-gridN5, .ccm-layout-row .r-gridN6, .ccm-layout-row .r-gridN7, .ccm-layout-row .r-gridN8, .ccm-layout-row .r-gridN9, .ccm-layout-row .r-gridN10, .ccm-layout-row .r-gridN11, .ccm-layout-row .r-gridN12 {
  margin: 0;
}
.ccm-layout-row .r-grid1, .ccm-layout-row .r-grid2, .ccm-layout-row .r-grid3, .ccm-layout-row .r-grid4, .ccm-layout-row .r-grid5, .ccm-layout-row .r-grid6, .ccm-layout-row .r-grid7, .ccm-layout-row .r-grid8, .ccm-layout-row .r-grid9, .ccm-layout-row .r-grid10, .ccm-layout-row .r-grid11, .ccm-layout-row .r-grid12 {
  margin: 0;
}
.ccm-layout-row .fixSpacing {
  margin: 0;
}
.ccm-layout-row .flex-align-self-end {
  -webkit-align-self: flex-end;
          align-self: flex-end;
}
.gap10 .ccm-layout-row {
  gap: 10px;
}

.gap10 .ccm-layout-row + .ccm-layout-row {
  margin-top: 10px;
}

@media screen and (max-width: 480px) {
  .ccm-layout-row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
            flex-direction: column;
  }
}

/* === フォーム部分追加(20/07/15) === */
@media screen and (max-width: 480px) {
  .miniSurveyView input[type=text],
  .miniSurveyView input[name^=Question],
  .miniSurveyView textarea[name^=Question] {
    font-size: 16px !important;
    -webkit-transform: scale(0.9) !important;
            transform: scale(0.9) !important;
  }
}
:root {
  --color01: #008080;
  --color02: #00e8d9;
  --white: #fff;
  --black: #333;
  --font-family-ja: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  --font-family-ja-bold: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI semibold", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic", "Segoe UI", Verdana, Meiryo, sans-serif;
}

body[class^=body-pt] {
  color:/*#008080*/ var(--black);
}

.txtColor01 {
  color: var(--color01) !important;
}

.txtColor02 {
  color: var(--color02) !important;
}

.bgColor01 {
  background-color: var(--color01);
}

.bgColor11 {
  background-color: #e9f6f6;
}

.lh01 {
  line-height: 1.75;
}

.en {
  font-family: "Akshar", sans-serif;
  font-weight: 500;
}

.txtWhite {
  color: var(--white) !important;
}

.txtBlack {
  color: var(--black) !important;
}

.plateWhite {
  background-color: var(--white);
  border-radius: 30px;
}

.fs_btn {
  display: block;
  color: var(--white) !important;
  background-color: var(--color01);
  line-height: 1;
  font-size: 15px;
  padding: 1.5em 1em;
  border-radius: 30px;
  text-align: center !important;
  font-weight: bold;
  width: min(300px, 100%);
  outline: 5px solid rgba(187, 187, 187, 0);
}

.fs_btn:hover {
  outline: 5px solid rgba(187, 187, 187, 0.5);
}

.fs_btn_white .fs_btn {
  color: var(--color01) !important;
  background-color: var(--white);
}/*# sourceMappingURL=style.css.map */

/* ==============================　ヘッダー　============================== */
.hamburger {
  width: 80px;
  height: 80px;
  background: rgba(0, 128, 128, 0.5);
  color: var(--white);
  border-radius: 0 0 0 25px;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  position: fixed;
  top: 0px;
  right: 0px;
  z-index: 9999;
  -webkit-backdrop-filter: invert(80%) blur(10px);
          backdrop-filter: invert(80%) blur(10px);
}

@media screen and (max-width: 480px) {
.hamburger { width: 62px; height: 62px; border-radius: 0 0 0 20px;}}

.hamburger:hover {
  color: var(--white);
}
.hamburger__icon {
  position: relative;
}
.hamburger__icon, .hamburger__icon::before, .hamburger__icon::after {
  display: block;
  width: 30px;
  height: 2px;
  background-color: currentColor !important;
}
.hamburger__icon::before {
  top: -10px;
}
.hamburger__icon::after {
  top: auto;
  bottom: -10px;
}
.hamburger.active .hamburger__icon {
  background-color: transparent !important;
}
.hamburger.active .hamburger__icon::before {
  -webkit-transform: translateY(10px) rotate(45deg);
          transform: translateY(10px) rotate(45deg);
}
.hamburger.active .hamburger__icon::after {
  -webkit-transform: translateY(-10px) rotate(-45deg);
          transform: translateY(-10px) rotate(-45deg);
}

/*　———　PC - ナビ　———　*/
.h_pc_navi .fsNavMenuList li a {
  padding: 0 !important;
  margin-right: 2rem !important;
  line-height: 100px;
  font-size: 15px;
  color: var(--color01) !important;
}
.h_pc_navi .fsNavMenuList li:last-of-type a {
  display: block;
  color: var(--white) !important;
  background-color: var(--color01);
  line-height: 1;
  font-size: 15px;
  margin: auto 0 !important;
  padding: 1em 1em !important;
  border-radius: 30px;
  text-align: center !important;
  font-weight: bold;
  width: 150px;
  letter-spacing: 0.01em;
  outline: 5px solid rgba(187, 187, 187, 0);
}
.h_pc_navi .fsNavMenuList li:last-of-type a::after {
  display: none !important;
}
.h_pc_navi .fsNavMenuList li:last-of-type a:hover {
  outline: 5px solid rgba(187, 187, 187, 0.5);
}

@media screen and (max-width: 1400px) {
  .h_pc_navi .fsNavMenuList li {
    font-size: 15px !important;
  }
}
@media screen and (max-width: 1200px) {
  .h_pc_navi .fsNavMenuList li a {
    margin-right: 1.5rem !important;
  }
}
.h_pc_navi a {
  position: relative;
  display: inline-block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.h_pc_navi a::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  width: 0;
  height: 2px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.h_pc_navi a:hover::after {
  width: 100%;
}

/*
.h_pc_navi li:nth-child(7) {
  display: none;
}
*/

#fsInfoBlock dl {
  border-bottom: 3px solid #f4f4f4;
  padding-left: 20px;
  padding-right: 20px;
}
#fsInfoBlock dl:last-child {
  border-bottom: 0;
  padding-left: 20px;
  padding-right: 20px;
}

#fsInfoBlock .entryData {
  width: 8em;
}

#fsInfoBlock .entryData,
#fsInfoBlock .entryTitle {
  font-size: 15px;
}

#fsInfoBlock dd {
  border-left: 0;
  width: auto;
}

#fsInfoBlock .entrySummary {
  display: none;
}

/*杉本 CSS*/

/*　--------------------　telリンク - スマホ版のみ　--------------------　*/
@media screen and (min-width: 768px) {
a[href^="tel:"] {pointer-events: none;}
}
@media screen and (min-width: 480px) {
.tel_splink {pointer-events: none;}
}
/*　———　スマホ時改行なし　———　*/
@media screen and (max-width: 820px){
.sp-br-none br {display:none;}
}
/*　———　スマホ時改行あり　———　*/
@media only screen and (min-width: 769px){
.sp-br br {display:none;}
}
/*　--------------------　タブレット横時スクロール　--------------------　*/
@media screen and (max-width: 1024px) {
.tb-bg-scroll{background-attachment: scroll!important; }
}

/*----------ポジションリラティブ----------*/
.pos_rel{position: relative;}

/*　--------------------　マルチイメージのポインター無　--------------------　*/
.cuosor {pointer-events: none ; cursor: default ;}

@media screen and (max-width: 900px) { 
}
@media screen and (max-width: 480px) { 
.tx-center{
text-align: center!important;
}
.tx-left{
text-align: left!important;
}
.tx-right{
text-align: right!important;
}}


/*　--------------------　インタビュー　--------------------　*/

.en-ttl_S{  font-family: "Akshar", sans-serif;
  font-weight: 500;}

.en-ttl{letter-spacing: 0.1em; font-size:7.7vmin;}

.en-ttl_S p:nth-child(1){font-size:28px; padding-top:9rem;}
.en-ttl_S p:nth-child(2){font-size:4rem; letter-spacing: 0.3rem; }

.profile_tx{padding-bottom:9rem;}
.profile_tx p{padding-bottom:2rem;  color:#fff; font-size:2rem; font-weight:bold;}
.profile_line{border: solid 2px; padding:1rem 2rem;   border-radius: 2rem; margin-top:3rem; color:#fff; font-size:1rem;}

@media screen and (max-width: 498px) {
.en-ttl_S p:nth-child(1){ padding-top:27rem !important; }
.profile_tx{padding-bottom:0;}}


.en_sub-ttl{padding:2rem; margin-top:-12em; background-color:#fff; border-radius: 0 1rem 0 0; }
.en_sub-ttl p{font-size:28px;  font-family: "Akshar", sans-serif;  font-weight: 500;}
.en_sub-ttl li{width:100%; border-top: 2px solid #e6e6e6; }
.en_sub-ttl dl{display:flex; flex-direction:row; border-bottom: 2px solid #e6e6e6; padding:1rem 0; }


.en_sub-ttl dt{width:30%; }
.en_sub-ttl dd{width:70%;}


.takeda_sub-ttl{padding:2rem; margin-top:-10em; background-color:#fff; border-radius: 0 1rem 0 0; }
.takeda_sub-ttl p{font-size:28px;  font-family: "Akshar", sans-serif;  font-weight: 500;}
.takeda_sub-ttl li{width:100%; border-top: 2px solid #e6e6e6; }
.takeda_sub-ttl dl{display:flex; flex-direction:row; border-bottom: 2px solid #e6e6e6; padding:1rem 0; }


.takeda_sub-ttl dt{width:30%; }
.takeda_sub-ttl dd{width:70%;}

@media screen and (max-width: 768px) {.en_sub-ttl{ margin-top:-16em;}}
@media screen and (max-width: 498px) {.en_sub-ttl{margin-top:0; padding:2rem 40px;}
.takeda_sub-ttl{margin-top:0;}}

.intv-pd{padding:5rem 0;}

.intv04_box{padding:50px; background-color:#e9f6f6; }
.intv04_box p:nth-child(1) {font-size:28px;
font-family: "Akshar", sans-serif;
  font-weight: 500;}

.pd_5rem-50px {padding: 0 50px; }
.intv_q2_r{margin-top:-2rem; padding:5rem 50px; background-color:#fff;}
@media screen and (max-width: 498px) {.intv_q2_r{margin-top:0rem;  padding:5rem 40px 30px 40px;}
.pd_5rem-50px {padding: 0 40px 5rem 40px; }}

.intv_private_box{padding:50px; background-color:#e9f6f6;}

@media screen and (max-width: 498px) {.intv_private_box { padding:30px; }}

.intv_private_ttl ul {width:100%; display:flex; flex-direction:row;}
.intv_private_ttl li:nth-child(1) {width:10%; font-size:4rem; margin-top:-0.8rem; color:#00e8d9;}
.intv_private_ttl li:nth-child(2) {width:90%;}

.intv_private_ttl dt{font-size:28px; letter-spacing: 0.3rem; }
.intv_private_ttl dd{  font-weight: bold; font-size: 1rem; color:#666666; padding-bottom:2rem;}

@media screen and (max-width: 820px) { .intv_private_ttl li:nth-child(1){font-size: 2rem;    margin-top: 0.15rem;}}

@media screen and (max-width: 498px) {.intv_private_ttl li:nth-child(1) {width:15%;  font-size: 3rem; margin-top: 0rem; }
.intv_private_ttl li:nth-child(2) {width:85%;}
.intv_private_ttl dt{ letter-spacing: 0 !important;}}

.bgcl-A {background-color:#e9f6f6;}
.bgcl-B {background: linear-gradient(to right, #008080, #23810e);  border-radius: 5rem 0 0 0; }
.bgcl-C {background-color:#008080;}
.bgcl-W{background-color:#fff;}
.col-1{flex: 3;}

@media screen and (max-width: 640px){.col-1 {    padding-right: 0rem;}}


.tk_top_time{display:none;}
.en .tk_flex{border-bottom:none;}

@media screen and (max-width: 498px) {
.en .tk_flex {display:flex; flex-direction: column; }
}

.tk_kiji_des{font-size:16px;  font-weight: bold;}
.tk_kiji_des ::first-line{display: inline-block; font-size:1rem;}


.tk_kiji_ttl {
    letter-spacing: 0.1rem;
    font-size: 3rem;
    padding: 3.5rem 0 3rem 0;
    font-weight: 600;
}

.recruit_box{ margin:5rem 20px;}


/* === 追加ここから(fujisada) === */
/* スマホの場合切り抜きキャンセル ここから */
@media screen and (max-width: 480px) {
.change_layout .ccm-layout-row .ccm-layout-cell svg image {
    clip-path: none;/* svgの切り抜き止める */
}
}
/* スマホの場合切り抜きキャンセル ここまで */

/* スマホの場合左右入れ替え ここから */
@media screen and (max-width: 480px) {
.change_layout_center .ccm-layout-row {
  display:flex;
  flex-direction: column;/* 縦並び */
}
.change_layout_center .ccm-layout-row .ccm-layout-cell:nth-child(1) {
    order: 2;
}
.change_layout_center .ccm-layout-row .ccm-layout-cell:nth-child(2) {
    order: 1;
}
}
/* スマホの場合左右入れ替え ここまで */

.job_box_bg{background-color:#F3F4F4; padding:2rem; border-radius:0.5rem;}

@media screen and (max-width: 480px) {
.rec_top_img { background-image:none!important;}}

/*
.hobby_photo{margin-top:-5rem;}*/
@media screen and (max-width: 498px) {.hobby_photo{margin-top:2rem;}}



/* time-schedule */
.time-schedule {
  min-width: 400px;
  max-width: 400px;
  list-style: none;
  margin: 0 auto 0 6em;
  padding-left: 18px;
  border-left: 4px solid #31BAB4;
  box-sizing: border-box;
}

.time-schedule li {
  width: 100%;
  margin: 0 0;
  padding: 5px 0;
  position: relative;
}

.time-schedule span.time {
  width: 5em;
  display: inline-block;
  margin-left: -8em;
  padding: 0 0 5px;
  margin-top: 15px;
  vertical-align: top;
  position: relative;
  text-align: right;
  box-sizing: border-box;
}

.time-schedule span.time::after {
content: "";
    position: absolute;
    right: -36px;
    top: 5px;
    background: #31BAB4;
    width: 15px;
    height: 15px;
    border-radius: 10px;
}

@media screen and (max-width: 1200px){
.time-schedule span.time::after { right: -41px;
    top: 3px; }}

@media screen and (max-width: 498px){
.time-schedule span.time::after {
  right: -35px;
  top: 0;}}


.time-schedule .sch_box {
  display: inline-block;
  width: 100%;
  margin-left: 30px;
  padding: 15px 10px 15px 10px;
  vertical-align: middle;
/*  background: #efefef;*/
  box-sizing: border-box;
  border-radius: 4px;
}

.time-schedule .sch_title {
  font-size: 16px;
  font-weight: 700;
 padding-bottom:1rem;}

.time-schedule .sch_tx {
  font-size: 14px;
  font-weight: normal;
}

.time{color:#31bab4; font-weight: bold;}

@media screen and (max-width: 1200px){
.time-schedule {
min-width: auto; 
max-width: auto;
padding-left: 6px;
}}


#CarouselThemeCustom .thumb-item .slick-slide-img {height:auto;width:100%;}
#CarouselThemeCustom .thumb-item .slick-list .slick-track .slick-slide {height:auto; padding-bottom:1rem;}

.intv03_schedule{padding:30px 40px;}


/*　▼　*/
.flowA-sankaku  {
width: 0;
height: 0;
border: 2rem solid transparent;
border-top: 2rem solid #008080;
margin: 0 auto;
padding:0 0 1rem 0;
}
.flowA-sankaku-color {
width: 0;
height: 0;
border: 2rem solid transparent;
border-top: 2rem solid #31BAB4;
margin: 0 auto!important;
padding:0 0 1rem 0;

}

/*　--------------------　お知らせ　--------------------　*/


.info_box_W{  background-color:#fff;   border-radius: 30px;}
.info_newbox_top{ background-color:#fff;   border-radius: 30px 30px 0 0; margin:5rem 20px 0 20px;  padding:5rem 30px 30px 30px;}
.info_newbox_bottom{ background-color:#fff; border-radius:0 0 30px 30px; margin:0 20px 0 20px; padding:0rem 30px 5rem 30px;}


.composer_ttl { font-size:4.2vmin; padding:2rem 0 5px 20px;}
.composer_sub-ttl { font-size:9vmin; color:#E9F6F6; text-align:right; letter-spacing: 0.2em; padding:0 20px; line-height:1;}

@media screen and (max-width: 498px){
.composer_ttl {font-size: min(28px, 5.2vmin)!important;     padding: 0 30px 20px 30px; padding-top:0!important;}}

/*　--------------------　お問い合わせ　--------------------　*/

.formBlockSurveyTable dl{padding:2% 0;}
.formBlockSurveyTable dl dt{  text-align: left !important; width:13%;}
.formBlockSurveyTable dl dd input, .formBlockSurveyTable dl dd textarea{ border: solid 1px #666!important ; background-color:f2f2f2;  }

@media screen and (max-width: 498px){.formBlockSurveyTable dl dt{  text-align: left !important; width:100%;}}

.cursor{ pointer-events: none;}


/*　----------　会社概要　----------　*/
.cp_left {
font-size: 0.9rem;
padding: 1rem 1rem 0 1rem;
vertical-align: top;
width: 30%;
font-weight: bold;
text-align: justify;
color: #808080;
}
.cp_right {
font-size: 0.9rem;
text-align: left;
padding: 1rem 0;
vertical-align: top;
width: 70%;
}
.cp_line {
border-top:1px solid #ccc;
}

.cp_topline_left { font-size: 0.9rem;
border-top:2px solid #00e8d9;
padding: 1rem 1rem 0 1rem;
vertical-align: top;
width: 30%;
font-weight: bold;
text-align: justify;
color: #808080;
}
.cp_topline_right {
border-top:2px solid #000;
font-size: 0.9rem;
text-align: left;
padding: 1rem 0;
vertical-align: top;
width: 70%;
}

@media screen and (max-width: 498px){
.cp_topline_right , .cp_left { padding: 1rem 1rem 0 0; }
}

.cmpy_name{ color:#00E8D9;
  letter-spacing: 0.2rem;
}
.letter-spacing_3{  letter-spacing: 0.3rem;}

.ac-ul ul {width:100%; display:flex; flex-direction:row;}
.ac-ul li:nth-child(1) {width: 25%; padding: 1rem 0;  font-size:1rem; font-weight :bold;}
.ac-ul li:nth-child(2) {width: 70%; padding: 1rem  0 1rem 1rem;}
.ac-ul dd{padding-bottom:1rem;  font-weight :bold;}
.ac-ul dt{padding-bottom:2rem;}

.ac_font{margin-bottom:1rem!important; font-size:1rem; font-weight:bold; }
.ac-btn{background-color:#008080; color:#fff; padding:1rem 2rem;   border-radius: 30px;  font-weight :bold;  opacity:1;}

.guideline-tb{
font-size: 1rem;
vertical-align: top;
text-align: justify;
width: 100%;
}

.guideline-line{
border-top:1px solid #666;
}

.flow_entryA{width: 25%;background-color:rgba(49,186,180,0.1); padding:4rem;
border-radius: 5px;}
.flow_entryB{width: 25%;background-color: #31bab4; padding:4rem; color: #fff;
border-radius: 5px;}
.flow_entry_arrow{width: 10%; color: #31bab4;}


@media screen and (max-width: 1200px){
.flow-entry{width: 100%;}
.flow_entryA{padding:2rem 1rem;}
.flow_entryB{padding:2rem 1rem;}}

.guideline_list ul{width:100%; display:flex; flex-direction:column; background-color:#f2f2f2; text-align:left; margin-bottom:5rem;}
.guideline_list li{width:100%;}
.guideline_list dl{ display:flex; flex-direction:row!important ; }
.guideline_list li dt{width:calc(100% - 75% - 4rem );   font-weight: bold;
padding:2rem;border-bottom: solid 1px #666; background-color:#e9f6f6;}
.guideline_list li dd{width:75%;padding:2rem;border-bottom: solid 1px #808080; }
.guideline_list span{ display: inline-block;    width: 28%; font-weight: bold;}

@media screen and (max-width: 498px){
.guideline_list li dt{width: calc(100% - 60% - 2rem );  padding:2rem 1rem; }
.guideline_list li dd{width:60%; padding:2rem 1rem; }
.guideline_list span{ width: 100%;}
}

.works_tag span{ background:#E9F6F6; color:#008080;
 font-weight: bold; padding:0.5rem 2rem;margin: 0 30px;}

.works_list {margin:0 30px ; padding-bottom:5rem;}
.works_list ul{width:100%; display:flex; flex-direction:column; border-top: solid 1px #808080;}
.works_list li{width:100%;}
.works_list dl{ display:flex; flex-direction:row!important ;border-bottom: solid 1px #808080;  padding:2rem 0;}
.works_list li dt{width:calc(100% - 80%); }
.works_list li dd{width:80%;}

.works_pd {padding:2rem 30px;}

@media screen and (max-width: 498px){
.page_title .fs_c_title{font-size: min(39px, 8.4vmin)!important;     padding: 0 30px 20px 30px;
padding-top:0!important;}}


/* ----- 2024.02.22 追加分 ----- */

/* スマホも横並び指定 */
.sp-row.ccm-layout-wrapper {
  /* レイアウトエリア */
}
.sp-row.ccm-layout-wrapper > .ccm-layout > .ccm-layout-row {
  -webkit-box-orient: horizontal !important;
  -webkit-box-direction: normal !important;
  -webkit-flex-direction: row !important;
          flex-direction: row !important;
}
.image-over-left {
  margin-left: -200px;
}

/*　へッダー　*/
.lineA-nav a::after {
  background: #008080;
}

#top_logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  height: 100px;
width:70%;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  text-align: justify;
  background-repeat: no-repeat;
  margin: 0 !important;
  padding: 0 0 0 20px!important;
}


#top_logo img { width: auto; height: 40px; }
@media screen and (max-width: 498px){
#top_logo { padding: 0 10px !important;   height: 80px; }
#top_logo img { width: auto; height: 30px; }}

/*　Fatnaviフィックス　*/
#topfix-A {
  position: absolute;
  z-index: 50;
  top: 0;
  right: 0;
}

#topfix-B {
  position: absolute;
  z-index: 10;
  top: 0;
  right: 0;
}

.hero {
  position: relative;
  margin-bottom: 130px;
}
.heroImg {
  margin: 0 auto;
  border-radius: min(782px, 40vw) 0;
  height: 782px;
  overflow: hidden;
}
.heroImg img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.heroTxt {
  color: var(--color01);
  position: absolute;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: absolute;
  inset: 20px;
  margin: auto;
  font-size: 48px;
  font-size: min(48px, 5.4vmin);
  font-weight: bold;
  text-align: left;
  letter-spacing: 0.2em;
}
.heroTxt .en {
  font-size: 28px;
  font-size: min(28px, 3.2vmin);
  font-family: "Akshar", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #fff;
  letter-spacing: 0.4em;
  padding-left: 20px;
}
.heroTxt.fs-inview {
  opacity: 0;
  -webkit-transition: opacity 3s ease-in-out;
  transition: opacity 3s ease-in-out;
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}
.heroTxt.fs-inview-show {
  opacity: 1;
}
.heroTxt span {
  display: block;
  padding: 10px 20px 10px;
  margin: 18px 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  overflow: hidden;
  position: relative;
  background-color: #fff;
}
.heroTxt span b {
  display: block;
  font-weight: 700;
}
.heroTxt span:last-of-type {
  text-indent: -0.5em;
  padding-right: calc(20px - 0.5em);
}
.heroTxtWrapper {
  position: absolute;
  width: 100%;
  height: 100%;
  inset: 0;
  margin: auto;
}

.page-hero-lg {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
padding: 11vh 0 0  0 ;
}
.page-hero .page-hero h2.en, .page-hero-lg h2.en {
  color: #008080;
  font-size: min(94px, 10.5vmin);
  letter-spacing: 0.2em;
}

.large-bk-en {
  position: relative;
}
.large-bk-en > * {
  font-size: 100px;
  font-size: min(78px, 10vmin);
  font-family: "Akshar", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #e9f6f6;
  letter-spacing: 0.3em;
  z-index: 2;
  white-space: nowrap;
  mix-blend-mode: luminosity;
  text-align: left;
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  -webkit-transform: translateX(100%) rotate(90deg);
          transform: translateX(100%) rotate(90deg);
}

.fs-inview {
  opacity: 0;
  -webkit-transition: 1s ease;
  transition: 1s ease;
}
.fs-inview.fs-inview-show {
  opacity: 1;
}
.fs-inview.fs-inview-slideup {
  opacity: 0;
  -webkit-transform: translateY(25px);
          transform: translateY(25px);
  -webkit-transition: 1s ease;
  transition: 1s ease;
}
.fs-inview.fs-inview-slideup.fs-inview-show {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

/* top_movie */

.fs_video_player_bg .video-overlay { height:0%; }

.home_01_2nd_area { margin:70px 25px 70px 25px; }

@media screen and (min-width: 1921px) {
.home_top_area {padding-top:100vh;}
.home_top_video video{ top: 0; left: auto; width:auto; height:100%; transform: unset; -webkit-transform: unset;}
}
@media screen and (max-width: 1920px) {
.home_top_area {padding-top:88vh;}
.home_top_video video{ top: -100px; left: auto; width:100%; height:auto; transform: unset; -webkit-transform: unset;}
}
@media screen and (max-width: 1600px) {
.home_top_area {padding-top:88vh;}
.home_top_video video{ top: 0;}
}
@media screen and (max-width: 1400px) {
.home_top_area {padding-top:88vh;}
.home_top_video video{  top: 50%; left: 50%;width:auto; height:100%; transform: translateY(-50%) translateX(-50%);  -webkit-transform:  translateY(-50%) translateX(-50%);}
}
@media screen and (max-width: 1200px) {.home_top_area {padding-top:75vh;}}
@media screen and (max-width: 1024px) {.home_top_area {padding-top:70vh;}}
@media screen and (max-width: 768px) {.home_top_area {padding-top:50vh;}}
@media screen and (max-width: 480px) {
     .home_top_area {padding-top:36vh;}
     .home_01_2nd_area { margin:4rem 2px 4rem 2px; }
}

/* Youtube */
/* Youtube */
.pm_btn{display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex; flex-flow: row wrap; justify-content: flex-start; align-items: center; width:100%; box-sizing: border-box;}
.pm_btn img{width: 240px;}
.ytube a:hover { opacity: 0.85; -webkit-transition: 0.6s; transition: 0.6s;}
.pm_btn iframe{width: 240px; height: 132px;}
.ytube{position: relative; box-sizing: border-box; margin-top:-80px;}
.ytube iframe{position: absolute;right: 0; top: 0; width: 100%; height: 100%; opacity:0;}
.ytube a{position: absolute; right: 0rem; top: 0; width: 240px; height: 100%;}

@media screen and (max-width: 768px) {
.pm_btn img , .ytube a {width: 180px;}
.ytube{margin-top:-60px;}
}
@media screen and (max-width: 480px) {
.pm_btn img , .ytube a {width: 150px;}
.ytube{margin-top:-50px;}
}

/*
.bgMovie_area { display:none; }
*/

.bgMovie {
  position: absolute;
  inset: 0;
  margin: auto;
  height: 100%;
  width: 100%;
  z-index: -1;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  overflow: hidden;
}
.bgMovie video {
  z-index: 0;
  width: 100%;
  height: 12%;
  -o-object-fit: cover;
     object-fit: cover;
  margin: auto;
  overflow: hidden;
  opacity: 1;
  background-image: none;
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-duration: 1000ms;
          transition-duration: 1000ms;
}

.frontIntro {
  color: #fff;/*
  background: rgba(0 ,128 ,128 ,0.5);*/
  padding: 250px 0;
  position: relative;
  z-index: 1;
}
.frontIntro::before {
  position: absolute;
  right: 1em;
  content: "GREEN FOR EVERYONE.";
  font-size: 100px;
  font-size: min(100px, 11vmin);
  font-family: "Akshar", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #e9f6f6;
  letter-spacing: 0.3em;
  -webkit-transform: translateX(100%) rotate(90deg);
          transform: translateX(100%) rotate(90deg);
  /* background: red; */
  -webkit-transform-origin: 0;
          transform-origin: 0;
  top: 0;
  z-index: 2;
  white-space: nowrap;
  mix-blend-mode: luminosity;
}
.frontIntroTitle {
  font-size: 30px;
  font-weight: 400;
  line-height: 1.83;
  margin-bottom: 60px;
}
.frontIntroTxt {
  font-size: 16px;
  line-height: 3;
}

.plateWhite {
  position: relative;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  overflow: visible;
}
.plateWhite::before {
  content: "";
  display: block;
  width: calc(100% + 200px);
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #fff;
  border-radius: 30px;
  -webkit-transform: translateZ(-1px);
          transform: translateZ(-1px);
}

.layout01 {
  position: relative;
}
.layout01 .fs_image {
  position: relative;
  border-radius: 200px;
  overflow: hidden;
  -webkit-transition: 0.5s ease-in;
  transition: 0.5s ease-in;
  outline: 0px solid rgba(255, 255, 255, 0);
}
.layout01 .fs_image:hover {
  outline: 10px solid rgba(255, 255, 255, 0.1);
  -webkit-filter: brightness(150%);
        filter: blur(2px) contrast(90%);
}
.layout01 .fs_image img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.layout01 .fs_image::before {
  pointer-events: none;
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 50%;
/*  background-image: -webkit-linear-gradient(bottom, hsl(0, 0%, 0%) 0%, hsla(0, 0%, 0%, 0.987) 8.1%, hsla(0, 0%, 0%, 0.951) 15.5%, hsla(0, 0%, 0%, 0.896) 22.5%, hsla(0, 0%, 0%, 0.825) 29%, hsla(0, 0%, 0%, 0.741) 35.3%, hsla(0, 0%, 0%, 0.648) 41.2%, hsla(0, 0%, 0%, 0.55) 47.1%, hsla(0, 0%, 0%, 0.45) 52.9%, hsla(0, 0%, 0%, 0.352) 58.8%, hsla(0, 0%, 0%, 0.259) 64.7%, hsla(0, 0%, 0%, 0.175) 71%, hsla(0, 0%, 0%, 0.104) 77.5%, hsla(0, 0%, 0%, 0.049) 84.5%, hsla(0, 0%, 0%, 0.013) 91.9%, hsla(0, 0%, 0%, 0) 100%);
  background-image: linear-gradient(to top, hsl(0, 0%, 0%) 0%, hsla(0, 0%, 0%, 0.987) 8.1%, hsla(0, 0%, 0%, 0.951) 15.5%, hsla(0, 0%, 0%, 0.896) 22.5%, hsla(0, 0%, 0%, 0.825) 29%, hsla(0, 0%, 0%, 0.741) 35.3%, hsla(0, 0%, 0%, 0.648) 41.2%, hsla(0, 0%, 0%, 0.55) 47.1%, hsla(0, 0%, 0%, 0.45) 52.9%, hsla(0, 0%, 0%, 0.352) 58.8%, hsla(0, 0%, 0%, 0.259) 64.7%, hsla(0, 0%, 0%, 0.175) 71%, hsla(0, 0%, 0%, 0.104) 77.5%, hsla(0, 0%, 0%, 0.049) 84.5%, hsla(0, 0%, 0%, 0.013) 91.9%, hsla(0, 0%, 0%, 0) 100%);*/
}
.layout01 .layout01-bottom-text h3 {
  position: static;
  border-bottom: 4px double #000;
  width: 100%;
  color: #000;
}
.layout01 .layout01-bottom-text small {
  display: block;
  font-size: 14px;
  font-weight: bold;
  font-family: var(--font-family-ja-bold);
  margin-bottom: 0.5em;
}
.layout01 .layout01-bottom-text .en {
  font-size: 25px;
  letter-spacing: 0.2em;
}
.layout01 .fs_btn {
  border-bottom: 4px double #fff !important;
  width: 100%;
  background: none !important;
  padding: 20px;
  color: #fff !important;
  border-radius: 0 !important;
  outline: none !important;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.layout01 .fs_btn::before, .layout01 .fs_btn::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto 0;
  z-index: 1;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.layout01 .fs_btn::before {
  background-color: var(--white);
  width: 26px;
  height: 26px;
  border-radius: 20px;
  overflow: hidden;
}
.layout01 .fs_btn::after {
  width: 12px;
  height: 8px;
  background-color: #000;
  -webkit-mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJsMDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDMyIDIwIj48cGF0aCBkPSJNMjcuNSwyMGMtLjksMC0xLjgtLjMtMi41LTFMMTYsOS45LDcsMTljLTEuNCwxLjQtMy42LDEuNC00LjksMC0xLjQtMS40LTEuNC0zLjYsMC00LjlMMTYsMGwxNCwxNGMxLjQsMS40LDEuNCwzLjYsMCw0LjktLjcsLjctMS42LDEtMi41LDFaIi8+PC9zdmc+);
          mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJsMDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDMyIDIwIj48cGF0aCBkPSJNMjcuNSwyMGMtLjksMC0xLjgtLjMtMi41LTFMMTYsOS45LDcsMTljLTEuNCwxLjQtMy42LDEuNC00LjksMC0xLjQtMS40LTEuNC0zLjYsMC00LjlMMTYsMGwxNCwxNGMxLjQsMS40LDEuNCwzLjYsMCw0LjktLjcsLjctMS42LDEtMi41LDFaIi8+PC9zdmc+);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-transform: rotate(90deg) translateY(75%);
          transform: rotate(90deg) translateY(75%);
}
.layout01 .fs_btn:hover {
  outline: none !important;
  color: var(--color02) !important;
  border-color: var(--color02) !important;
}
.layout01 .fs_btn:hover::after {
  background-color: var(--color02);
}
.layout01 .fs_btn_text_main {
  font-size: 25px;
  letter-spacing: 0.2em;
  background: none;
}
.layout01 .fs_btn_text_main small {
  display: block;
  font-size: 14px;
  font-weight: bold;
  font-family: var(--font-family-ja-bold);
  margin-bottom: 0.5em;
}
.layout01 .fs_btn_text_main .en {
  font-size: 25px;
  letter-spacing: 0.2em;
  display: block;
  padding: 5px 0 0;
}
.layout01 h3 {
  position: absolute;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--white);
  text-align: center;
  bottom: 40px;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.layout01 h3 small {
  display: block;
  font-size: 14px;
  font-weight: bold;
  font-family: var(--font-family-ja-bold);
  margin-bottom: 0.5em;
}
.layout01 h3 .en {
  font-size: 25px;
  letter-spacing: 0.2em;
}
.layout01 p:not(.fs_btn_text_main) {
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  position: absolute;
  left: 20px;
  top: 0;
  font-size: 16px;
  font-family: var(--font-family-ja-bold);
  font-weight: bold;
}
.layout01 p:not(.fs_btn_text_main) span {
  background-color:var(--white);
  color:#008080 ;
  display: block;
  margin: 0 3px;
  padding: 10px 3px;
}
.layout01-parent {
  container-type: inline-size;
}
@container (width <=768px) {
  .layout01-parent.ccm-layout-wrapper > .ccm-layout > .ccm-layout-row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
            flex-direction: column;
  }
  .layout01-parent.ccm-layout-wrapper > .ccm-layout > .ccm-layout-row > .ccm-layout-col {
    width: 100% !important;
  }
}

.layout02 .ccm-layout-row {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
          align-items: flex-end;
  gap: 10px !important;
}
.layout02 .ccm-layout-row .ccm-spacer {
  display: none;
}
.layout02 .ccm-layout-col {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
          flex: 1;
  width: auto;
}
.layout02 .ccm-layout-col.first {
  background-color: var(--color01);
  border-radius: 0 25px 25px 0;
  margin-top: -200px;
  margin-right: -10px;
}
.layout02 .fixSpacing {
  margin: 0;
}

.layout03 {
  border-radius: 30px;
}
.layout03-title {
  font-size: 50px;
  font-size: min(50px, 10vmin);
  letter-spacing: 0.2em;
}
.layout03-lead {
  font-size: 30px;
  font-size: min(30px, 6.4vmin);
  letter-spacing: 0.2em;
  line-height: 1.6;
  font-weight: bold;
}
.layout03 p {
  font-size: 15px;
  font-size: min(15px, 3.4vmin);
  line-height: 2;
}

.faq-buttons {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 80px 30px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.faq-buttons > .fs_button {
  -webkit-flex-basis: calc(50% - 15px);
          flex-basis: calc(50% - 15px);
  --c01: #ddf6e2;
  --c02: #f3f4f4;
  --c: #ddf6e2;
}
.faq-buttons > .fs_button:nth-of-type(odd) {
  -webkit-transform: translateY(75%);
          transform: translateY(75%);
}
.faq-buttons > .fs_button:nth-of-type(4n-2), .faq-buttons > .fs_button:nth-of-type(4n-1) {
  --c: #f3f4f4;
}
.faq-buttons > .fs_button .fs_btn {
  color: var(--color01) !important;
  background: var(--c);
  font-size: 20px;
  padding: 50px 10px;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
          flex-direction: column;
  text-align: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  border-radius: 15px;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
}
.faq-buttons > .fs_button .fs_btn:hover {
  outline: none !important;
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.faq-buttons > .fs_button .fs_btn::before {
  content: " Q.";
  display: block;
  position: static;
  color: var(--color01);
  z-index: 1;
  font-size: 32px;
  font-family: "Akshar", sans-serif;
  font-weight: 700;
  margin-bottom: 20px;
  -webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMjAgNTAwIj48cGF0aCBkPSJNMjAwIDIyaC0zNC45Yy03LjcgMC0xNS4xLTMtMjAuNy04LjNDMTM1LjEgNC45IDEyMi45IDAgMTEwIDBTODQuOSA0LjkgNzUuNiAxMy43QzcwIDE5IDYyLjYgMjIgNTQuOSAyMkgyMEM5IDIyIDAgMzEgMCA0MnY0MzhjMCAxMSA5IDIwIDIwIDIwaDE4MGMxMSAwIDIwLTkgMjAtMjBWNDJjMC0xMS05LTIwLTIwLTIweiIvPjwvc3ZnPg==);
          mask-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMjAgNTAwIj48cGF0aCBkPSJNMjAwIDIyaC0zNC45Yy03LjcgMC0xNS4xLTMtMjAuNy04LjNDMTM1LjEgNC45IDEyMi45IDAgMTEwIDBTODQuOSA0LjkgNzUuNiAxMy43QzcwIDE5IDYyLjYgMjIgNTQuOSAyMkgyMEM5IDIyIDAgMzEgMCA0MnY0MzhjMCAxMSA5IDIwIDIwIDIwaDE4MGMxMSAwIDIwLTkgMjAtMjBWNDJjMC0xMS05LTIwLTIwLTIweiIvPjwvc3ZnPg==);
  -webkit-mask-size: 220px;
          mask-size: 220px;
  -webkit-mask-position: center top;
          mask-position: center top;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  width: 100px;
  position: absolute;
  top: 0;
  -webkit-transform: translateY(-22px) translateZ(0px);
          transform: translateY(-22px) translateZ(0px);
  background: var(--c);
  mask-position: center top;
  padding: 20px 0 0;
}
.faq-buttons > .fs_button .fs_btn::after {
  content: "";
  position: absolute;
  z-index: auto;
  display: block;
  left: 50%;
  bottom: 0;
  -webkit-transform: translate(-50%, 95%);
          transform: translate(-50%, 95%);
  border: 10px solid transparent;
  border-top: 18px solid var(--c);
}
.faq-buttons > .fs_button .fs_btn small {
  display: block;
  font-size: 12px;
  margin-bottom: 10px;
}

.align-items-start .ccm-layout-row {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
          align-items: flex-start;
}

.style01 {
  font-size: 30px;
  letter-spacing: 0.02em;
  text-align: left;
  padding-bottom: 50px;
  border-bottom: 2px solid #000;
  -webkit-border-image: -webkit-linear-gradient(left, var(--color02) 4em, #000 4em);
       -o-border-image: linear-gradient(to right, var(--color02) 4em, #000 4em);
          border-image: linear-gradient(to right, var(--color02) 4em, #000 4em);
  border-image-slice: 1;
  text-align: left;
}

.style02 {
  font-size: 20px;
  letter-spacing: 0.2em;
}
.style02 b {
  font-weight: bold;
}

.list01 ul {
  list-style: none;
}
.list01 ul, .list01 li {
  margin: 0;
  padding: 0;
}
.list01 li {
  padding: 1em 1em 1em 1.5em;
  display: block;
  position: relative;
  font-size: 15px;
  font-size: min(15px, 3.4vmin);
}
.list01 li + li {
  border-top: 1px solid #a1a1a1;
}
.list01 li::before {
  content: "";
  width: 0.8em;
  height: 0.8em;
  background: var(--color02);
  position: absolute;
  top: 1.4em;
  left: 0;
  margin: 0;
}

.bgBlob01Parent {
  position: relative;
  border-radius: 150px 0 0 0;
  overflow: hidden;
  z-index: 1;
}

div:not(.ccm-block) > .bgBlob01 {
  width: 100%;
  height: 100%;
  z-index: -1;
  border-radius: 150px 0 0 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translateZ(-1px);
          transform: translateZ(-1px);
  opacity: 0.95;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
}
div:not(.ccm-block) > .bgBlob01::before {
  content: "";
  display: block;
  position: absolute;
  margin: auto;
  inset: 0;
  width: 100%;
  height: 100%;
  background: -webkit-linear-gradient(315deg, #008080 0%, #028079 15%, #088067 36%, #118049 62%, #1E811F 89%, #23810E 100%);
  background: linear-gradient(135deg, #008080 0%, #028079 15%, #088067 36%, #118049 62%, #1E811F 89%, #23810E 100%);
  z-index: -1;
  border-radius: 150px 0 0 0;
  overflow: hidden;
}
div:not(.ccm-block) > .bgBlob01 > img:first-of-type {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center bottom;
     object-position: center bottom;
}
div:not(.ccm-block) > .bgBlob01 > img:last-of-type {
  position: absolute;
  top: 0;
  left: 0;
  inset: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
}

.extraButtons {
  background: -webkit-linear-gradient(315deg, #008080 0%, #028079 15%, #088067 36%, #118049 62%, #1E811F 89%, #23810E 100%);
  background: linear-gradient(135deg, #008080 0%, #028079 15%, #088067 36%, #118049 62%, #1E811F 89%, #23810E 100%);
  padding: 100px;
  border-radius: 150px 0 0 0;
}
.extraButtonsTitle {
  width: 100%;
  text-align: center;
}
.extraButtonsTitle .en {
  font-size: 50px;
  font-size: min(50px, 10vmin);
  font-family: "Akshar", sans-serif;
  font-weight: 500;
  letter-spacing: 0.2em;
  color: #fff;
}
.extraButtons .inner {
  border-radius: 30px;
  background: rgba(51, 51, 51, 0.6);
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 20px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 80px 100px;
  box-sizing: border-box;
}
.extraButtons .inner > p {
  width: calc(50% - 10px);
}
.extraButtons .inner > p > a {
  display: block;
  width: 100%;
  height: 100%;
  background: #d8eeea;
  position: relative;
  padding: 50px 50px 50px 150px;
  padding-left: min(150px, 15vmin);
  box-sizing: border-box;
  position: relative;
  outline: 5px solid rgba(187, 187, 187, 0);
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.extraButtons .inner > p > a:hover {
  outline: 5px solid rgba(187, 187, 187, 0.5);
}
.extraButtons .inner > p > a > img {
  position: absolute;
  left: 50px;
  top: 0;
  bottom: 0;
  display: block;
  margin: auto 0;
  width: min(54px, 6vmin);
  height: auto;
}
.extraButtons .inner > p > a strong {
  color: #000;
  font-size: 30px;
  font-size: min(30px, 3.4vmin);
  font-weight: 500;
  letter-spacing: 0.2em;
  margin-bottom: 0.5em;
  line-height: 1;
  display: block;
}
.extraButtons .inner > p > a .en {
  font-size: 15px;
  font-size: min(15px, 1.6vmin);
  font-weight: 500;
  color: var(--color02);
  display: block;
}
.extraButtons .inner > p > a .en::before {
  content: "●";
  margin-right: 0.5em;
}
.extraButtons .inner > p > a::before, .extraButtons .inner > p > a::after {
  content: "";
  position: absolute;
  top: 0;
  right: 50px;
  bottom: 0;
  margin: auto 0;
  z-index: 1;
  -webkit-transition: 0.8s ease;
  transition: 0.8s ease;
}
.extraButtons .inner > p > a::before {
  background-color: var(--white);
  width: 40px;
  height: 40px;
  border-radius: 20px;
  overflow: hidden;
}
.extraButtons .inner > p > a::after {
  width: 18px;
  height: 12px;
  background: -webkit-linear-gradient(45deg, #008080, #23810e);
  background: linear-gradient(45deg, #008080, #23810e);
  -webkit-mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJsMDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDMyIDIwIj48cGF0aCBkPSJNMjcuNSwyMGMtLjksMC0xLjgtLjMtMi41LTFMMTYsOS45LDcsMTljLTEuNCwxLjQtMy42LDEuNC00LjksMC0xLjQtMS40LTEuNC0zLjYsMC00LjlMMTYsMGwxNCwxNGMxLjQsMS40LDEuNCwzLjYsMCw0LjktLjcsLjctMS42LDEtMi41LDFaIi8+PC9zdmc+);
          mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJsMDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDMyIDIwIj48cGF0aCBkPSJNMjcuNSwyMGMtLjksMC0xLjgtLjMtMi41LTFMMTYsOS45LDcsMTljLTEuNCwxLjQtMy42LDEuNC00LjksMC0xLjQtMS40LTEuNC0zLjYsMC00LjlMMTYsMGwxNCwxNGMxLjQsMS40LDEuNCwzLjYsMCw0LjktLjcsLjctMS42LDEtMi41LDFaIi8+PC9zdmc+);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-transform: rotate(90deg) translateY(75%);
          transform: rotate(90deg) translateY(75%);
}

.extraContact {
  background: var(--color01);
  color: #fff;
  padding: 60px 50px;
}
.extraContact .wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
          justify-content: space-between;
}
.extraContact .wrapper > * {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
          flex: 1;
}
.extraContactTitle {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  -webkit-align-self: center;
          align-self: center;
  text-align: center;
}
.extraContactList {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
  gap: 10px;
}
.extraContactList a {
  display: block;
  background: rgba(51, 51, 51, 0.6);
  color: #fff;
  border-radius: 10px;
  font-size: 20px;
  height: 130px;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
          justify-content: center;
  outline: 5px solid rgba(187, 187, 187, 0);
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.extraContactList a span {
  font-weight: bold;
  letter-spacing: 0.2em;
}
.extraContactList a span.en {
  font-size: 28px;
  letter-spacing: 0.2em;
  font-weight: 500;
}
.extraContactList a span::before {
  content: "";
  display: inline-block;
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 2em;
  vertical-align: middle;
}
.extraContactList a:hover {
  outline: 5px solid rgba(187, 187, 187, 0.5);
}
.extraContactList .tel a span::before {
  width: 20px;
  height: 20px;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJsMDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDIwIDIwIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6IzAwZThkOTt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTkuNywxNS45bC0zLTNjLS40LS40LTEuMi0uNC0xLjYsMGwtMS40LDEuNGMtLjQsLjQtMSwuNC0xLjUsMCwwLDAtMS4zLS45LTMuNS0zLTIuMi0yLjItMy0zLjUtMy0zLjUtLjMtLjQtLjMtMS4xLDAtMS41bDEuNC0xLjRjLjQtLjQsLjQtMS4yLDAtMS42TDQuMSwuM0MzLjYtLjEsMi45LS4xLDIuNSwuM2MwLDAtLjIsLjItMS44LDEuOC0xLjksMS45LC42LDcuOSw1LDEyLjIsNC4zLDQuMywxMC4zLDYuOSwxMi4yLDUsMS43LTEuNywxLjgtMS44LDEuOC0xLjgsLjQtLjQsLjQtMS4yLDAtMS42WiIvPjwvc3ZnPg==);
}
.extraContactList .mail a span::before {
  width: 20px;
  height: 20px;
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJsMDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDI4IDIwIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6IzAwZThkOTt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMjYuOSwwSDEuMUMuNywwLC4zLC40LC4zLC44djEuNkwxNCwxMS42LDI3LjcsMi40Vi44QzI3LjcsLjQsMjcuMywwLDI2LjksMFoiLz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik0uMyw1Ljh2MTAuOWMwLDEuOCwxLjUsMy4zLDMuMywzLjNIMjQuNGMxLjgsMCwzLjMtMS41LDMuMy0zLjNWNS44TDE0LDE1LC4zLDUuOFoiLz48L3N2Zz4=);
}

#footer-2Parent {
  padding: 100px 0 0;
}

#footer-3-2,
#footer-3-3 {
  border-top: 3px solid #f4f4f4;
  padding: 25px 0;
  margin: 25px 0 0 0 ;
}

#footer-5Parent {
  padding: 0 0 80px;
}

#footer .copyright {
  text-align: right;
  color: var(--color01);
  font-size: 15px;
}

.footerLogo img {
  width: 100px;
  height: auto;
  margin: 0 auto 0 0;
}
.footerGoogleLink {
  letter-spacing: 0.1em;
  font-weight: 300;
}
.footerLinks {
  display: grid;
  grid-auto-flow: column;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: -webkit-max-content auto;
  grid-template-rows: max-content auto;
  gap: 0 30px;
}
.footerLinks > div {
  text-align: left;
  font-size: 12px;
  border-right: 3px solid #f4f4f4;
}
.footerLinks > div > a {
  text-indent: -1em;
  padding-left: 1em;
  display: block;
}
.footerLinks > div > a::before {
  content: "●";
  display: inline-block;
  -webkit-transform: scale(0.5) translateX(-1em);
          transform: scale(0.5) translateX(-1em);
  color: #888;
}
.footerLinks > div:nth-of-type(n+5) {
  border-right: 0;
}
.footerLinks > div:nth-of-type(2n-1) {
  padding-bottom: 15px;
}
.footerLinks > div small {
  display: block;
  font-size: 1em;
  color: var(--color02);
  letter-spacing: 0.1em;
  font-weight: 300;
}
.footerLinks > div ul li a::before {
  content: "- ";
}

.fs_btn_01 .fs_btn {
  background-color: rgba(51, 51, 51, 0.6);
  width: 100%;
  height: 250px;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
          align-items: center;
  border-radius: 15px;
  padding: 75px;
  position: relative;
  outline: 0;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.fs_btn_01 .fs_btn::before, .fs_btn_01 .fs_btn::after {
  content: "";
  position: absolute;
  top: 0;
  right: 75px;
  bottom: 0;
  margin: auto 0;
  z-index: 1;
  -webkit-transition: 0.8s ease;
  transition: 0.8s ease;
}
.fs_btn_01 .fs_btn::before {
  background-color: var(--white);
  width: 40px;
  height: 40px;
  border-radius: 20px;
  overflow: hidden;
}
.fs_btn_01 .fs_btn::after {
  width: 18px;
  height: 12px;
  background-color: #008080;
  -webkit-mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJsMDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDMyIDIwIj48cGF0aCBkPSJNMjcuNSwyMGMtLjksMC0xLjgtLjMtMi41LTFMMTYsOS45LDcsMTljLTEuNCwxLjQtMy42LDEuNC00LjksMC0xLjQtMS40LTEuNC0zLjYsMC00LjlMMTYsMGwxNCwxNGMxLjQsMS40LDEuNCwzLjYsMCw0LjktLjcsLjctMS42LDEtMi41LDFaIi8+PC9zdmc+);
          mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJsMDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDMyIDIwIj48cGF0aCBkPSJNMjcuNSwyMGMtLjksMC0xLjgtLjMtMi41LTFMMTYsOS45LDcsMTljLTEuNCwxLjQtMy42LDEuNC00LjksMC0xLjQtMS40LTEuNC0zLjYsMC00LjlMMTYsMGwxNCwxNGMxLjQsMS40LDEuNCwzLjYsMCw0LjktLjcsLjctMS42LDEtMi41LDFaIi8+PC9zdmc+);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-transform: rotate(90deg) translateY(75%);
          transform: rotate(90deg) translateY(75%);
}
.fs_btn_01 .fs_btn:hover {
  background-color: rgba(51, 51, 51, 0.8);
  outline: 0;
}
.fs_btn_01_first .fs_btn {
  border-radius: 15px 0 0 15px;
}
.fs_btn_01_last .fs_btn {
  border-radius: 0 15px 15px 0;
}
.fs_btn_01 .fs_btn_text {
  text-align: left;
}
.fs_btn_01 .fs_btn_text_main {
  display: block;
  font-size: 30px;
  font-size: min(30px, 3.4vmin);
  letter-spacing: 0.2em;
  font-weight: 400;
  color: var(--white);
  margin-bottom: 15px;
}
.fs_btn_01 .fs_btn_text_sub {
  display: block;
  font-size: 28px;
  font-size: min(28px, 3.2vmin);
  font-family: "Akshar", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0.025em;
  color: var(--color02);
}

.ccm-edit-mode .slider01 { display:none; }

.slider01 {
  position: absolute;
  inset: 0;
  width: 100%;
}
.slider01 .slick-arrow {
  display: none !important;
}
.slider01 .slick-next {
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
  display: block !important;
  opacity: 0;
  position: absolute;
  top: 0;
  right: 170px;
  bottom: 0;
  margin: auto 0;
  padding: 20px;
  box-sizing: content-box;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  width: 12px;
  height: 18px;
  border: 0;
  background-color: transparent;
  cursor: pointer;
  mix-blend-mode: normal;
}
.slider01 .slick-next::after {
  position: absolute;
  content: "";
  inset: 0;
  margin: auto;
  display: block;
  width: 30px;
  height: 48px;
  background-color: #008080;
  -webkit-mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDI5LjcgNDguMiI+PGRlZnM+PHN0eWxlPi5jbHMtMXtzdHJva2Utd2lkdGg6MHB4O308L3N0eWxlPjwvZGVmcz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik00LDQ4LjJjLTEsMC0yLS40LTIuOC0xLjItMS42LTEuNi0xLjYtNC4xLDAtNS43bDE3LjMtMTcuM0wxLjIsNi44Qy0uNCw1LjMtLjQsMi43LDEuMiwxLjIsMi43LS40LDUuMy0uNCw2LjgsMS4ybDIyLjksMjIuOUw2LjgsNDdjLS44LjgtMS44LDEuMi0yLjgsMS4yWiIvPjwvc3ZnPg==);
          mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJf44Os44Kk44Ok44O8XzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDI5LjcgNDguMiI+PGRlZnM+PHN0eWxlPi5jbHMtMXtzdHJva2Utd2lkdGg6MHB4O308L3N0eWxlPjwvZGVmcz48cGF0aCBjbGFzcz0iY2xzLTEiIGQ9Ik00LDQ4LjJjLTEsMC0yLS40LTIuOC0xLjItMS42LTEuNi0xLjYtNC4xLDAtNS43bDE3LjMtMTcuM0wxLjIsNi44Qy0uNCw1LjMtLjQsMi43LDEuMiwxLjIsMi43LS40LDUuMy0uNCw2LjgsMS4ybDIyLjksMjIuOUw2LjgsNDdjLS44LjgtMS44LDEuMi0yLjgsMS4yWiIvPjwvc3ZnPg==);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.slider01 .slick-next:hover {
  mix-blend-mode: exclusion;
}
.slider01 .slick-next:hover::after {
  background-color: var(--color02);
}
.slider01 .slick-initialized.slick-slider .slick-list {
  width: calc(100% - 200px);
  height: 100%;
  overflow: hidden;
  margin-right: 200px;
}
.slider01 .slick-initialized.slick-slider .slick-next {
  opacity: 1;
  pointer-events: auto;
}
.slider01 .wrapper {
  max-width: none;
}
.slider01 .outer ul {
  width: 100%;
  height: 400px;
}
.slider01 .outer ul li img {
  width: 100%;
  height: 400px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.slider01 .outer ul li.slick-slide .inner {
  display: contents;
}

.page_title {
  margin-bottom: 30px;
  text-align: left;
}
.page_title .fs_c_title {
  font-size: 48px;
  font-size: min(48px, 5.4vmin);
  text-align: left;
  letter-spacing: 0.2em;
  padding-top: 100px;
}
.page_title .en {
  font-size: 100px;
  font-size: min(100px, 11vmin);
  text-align: right;
  opacity: 0.2;
  letter-spacing: 0.2em;
  line-height: 1;
}
.page_title .fs_breadcrumb {
  font-size: 12px;
}



.content_header {
  padding-top: 380px;
  padding-bottom: 30px;
}
.content_header .en {
  font-size: 70px;
  font-size: min(70px, 7.7vmin);
  text-align: right;
}

@media screen and (max-width: 480px) {.content_header{padding-top: 20vh;}}

.lead01 {
  font-size: 20px;
  font-weight: bold;
}

.lead01 + p {
  margin-top: 30px;
}

.enTitle {
  line-height: 1;
  text-align: left;
}
.enTitle .en {
  display: block;
  font-size: 70px;
  font-size: min(70px, 7.7vmin);
  font-family: "Akshar", sans-serif;
  font-weight: 500;
  font-style: normal;
  letter-spacing: 0.1em;
  margin-bottom: 15px;
}
.enTitle small {
  display: block;
  font-size: 24px;
  font-size: max(14px, 2.5vmin);
  font-weight: 500;
  letter-spacing: 0.2em;
  color: var(--color02);
}
.enTitle small::before {
  content: "●";
  padding-right: 1em;
}

.pagetop_btn {
  cursor: pointer;
  position: fixed;
  z-index: 20;
  bottom: 50px;
  right: 50px;
  background: #fff;
  font-size: 66px;
  width: 1em;
  height: 1em;
  text-indent: -2000%;
  border-radius: 50%;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.75);
/*  box-shadow: 0 0 5px rgba(0, 0, 0, 0.75), 0 0 0 17px rgba(187, 187, 187, 0.5);*/
  outline: 17px solid rgba(187, 187, 187, 0.5);
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.pagetop_btn .fs_btn {
  background: none;
  overflow: hidden;
}
.pagetop_btn .fs_btn:hover {
  outline: none !important;
}
.pagetop_btn::before, .pagetop_btn::after {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  -webkit-transition: 0.8s ease;
  transition: 0.8s ease;
  pointer-events: none;
}
.pagetop_btn::before {
  width: 1em;
  height: 1em;
  border-radius: 50%;
  box-shadow: 0 0 10px var(--color01);
  -webkit-transform: rotate(45deg) scaleY(1.1) translateZ(-1px);
          transform: rotate(45deg) scaleY(1.1) translateZ(-1px);
  background: rgba(255, 255, 255, 0);
  opacity: 0;
  mix-blend-mode: exclusion;
  -webkit-filter: blur(3px);
          filter: blur(3px);
}
.pagetop_btn::after {
  width: 32px;
  height: 20px;
  background: -webkit-linear-gradient(45deg, #008080, #23810e);
  background: linear-gradient(45deg, #008080, #23810e);
  -webkit-mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJsMDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDMyIDIwIj48cGF0aCBkPSJNMjcuNSwyMGMtLjksMC0xLjgtLjMtMi41LTFMMTYsOS45LDcsMTljLTEuNCwxLjQtMy42LDEuNC00LjksMC0xLjQtMS40LTEuNC0zLjYsMC00LjlMMTYsMGwxNCwxNGMxLjQsMS40LDEuNCwzLjYsMCw0LjktLjcsLjctMS42LDEtMi41LDFaIi8+PC9zdmc+);
          mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJsMDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDMyIDIwIj48cGF0aCBkPSJNMjcuNSwyMGMtLjksMC0xLjgtLjMtMi41LTFMMTYsOS45LDcsMTljLTEuNCwxLjQtMy42LDEuNC00LjksMC0xLjQtMS40LTEuNC0zLjYsMC00LjlMMTYsMGwxNCwxNGMxLjQsMS40LDEuNCwzLjYsMCw0LjktLjcsLjctMS42LDEtMi41LDFaIi8+PC9zdmc+);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}
.pagetop_btn:hover {
  opacity: 1 !important;
  outline-width: 21px;
  outline-color: rgba(187, 187, 187, 0.1);
}
.pagetop_btn:hover::before {
  opacity: 1;
}

/* ----- 2024.02.22 追加分 主にレスポンシブ用 ----- */

/* 画面サイズ 1300px 未満 */
@media (max-width: 1300px) {
.page_title , .page_title .fs_c_title , .page_title .en { padding-left:10px;}
  #MainContents > div > article[id$=Parent] > .rrh-layout-wrapper-wide > div[id^=pt0] > .rrh-layout-wrapper-wide {
    padding: 0;
  }
  #MainContents > div > article[id$=Parent] > .rrh-layout-wrapper-wide > div[id^=pt0] > .rrh-layout-wrapper-wide .rrh-layout-wrapper,
  #MainContents > div > article[id$=Parent] > .rrh-layout-wrapper-wide > div[id^=pt0] > .rrh-layout-wrapper-wide .rrh-layout-wrapper-wide {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
  }
  #MainContents > div > article[id$=Parent] > .rrh-layout-wrapper-wide > div[id^=pt0] > .rrh-layout-wrapper-wide .rrh-layout-wrapper .rrh-layout-wrapper,
  #MainContents > div > article[id$=Parent] > .rrh-layout-wrapper-wide > div[id^=pt0] > .rrh-layout-wrapper-wide .rrh-layout-wrapper .rrh-layout-wrapper-wide,
  #MainContents > div > article[id$=Parent] > .rrh-layout-wrapper-wide > div[id^=pt0] > .rrh-layout-wrapper-wide .rrh-layout-wrapper-wide .rrh-layout-wrapper,
  #MainContents > div > article[id$=Parent] > .rrh-layout-wrapper-wide > div[id^=pt0] > .rrh-layout-wrapper-wide .rrh-layout-wrapper-wide .rrh-layout-wrapper-wide {
    padding-left: 0;
    padding-right: 0;
  }
}

/* 画面サイズ 1024px 未満 */
@media (max-width: 1024px) {
  .px-tb-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .px-tb-20 {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .mx-tb-n20 {
    margin-left: -20px !important;
    margin-right: -20px !important;
  }
  .extraButtons {
    padding: 20px;
    border-radius: 0;
  }
  .extraButtons .inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
            flex-direction: column;
    padding: 20px;
    padding: max(20px, 5vmin);
  }
  .extraButtons .inner > p {
    width: 100%;
  }
  .extraButtons .inner > p > a {
    padding: 20px 20px 20px 80px;
  }
  .extraButtons .inner > p > a > img {
    left: 40px;
    width: 27px;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .extraButtons .inner > p > a::before, .extraButtons .inner > p > a::after {
    right: 20px;
  }
  .extraButtons .inner > p > a::before {
    width: 30px;
    height: 30px;
  }
  .extraButtons .inner > p > a::after {
    width: 12px;
    height: 8px;
  }
  .tb-order-column > .ccm-layout > .ccm-layout-row {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
            flex-direction: column;
  }
  .tb-order-column > .ccm-layout > .ccm-layout-row > .ccm-layout-col {
    display: contents;
  }
  .mt-tb-n100px {
    margin-top: -100px !important;
  }
  .layout02 .ccm-layout-col.first {
    border-radius: 25px 25px 0 0;
    margin-top: 0;
    margin-right: 0;
    margin-bottom: -10px;
    padding: 0;
  }
  .frontIntro {
    padding: 100px 0;
  }
  .tb-column.ccm-layout-wrapper {
    /* レイアウトエリア */
  }
  .tb-column.ccm-layout-wrapper > .ccm-layout > .ccm-layout-row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
            flex-direction: column;
  }
  .tb-column.ccm-layout-wrapper > .ccm-layout > .ccm-layout-row > .ccm-layout-col {
    width: 100% !important;
  }
  .tb-column.ccm-layout-wrapper > .ccm-layout > .ccm-layout-row > .ccm-layout-col > .ccm-area-styles > *.image-over-left {
    margin-left: 0 !important;
  }
  .tb-column .faq-buttons {
    padding-bottom: 200px !important;
  }
  .tb-column .large-bk-en > * {
    -webkit-transform: none;
            transform: none;
    line-height: 1.1;
    margin: 1em 0;
  }
  .tb-column .fs_btn_01 {
    margin: 10px 0;
  }
  .tb-column .fs_btn_01 .fs_btn {
    height: auto;
    padding: 30px;
  }
  .tb-column .fs_btn_01 .fs_btn::before, .tb-column .fs_btn_01 .fs_btn::after {
    right: 30px;
  }
  .tb-column .fs_btn_01 .fs_btn::before {
    background-color: var(--white);
    width: 26px;
    height: 26px;
    border-radius: 20px;
    overflow: hidden;
  }
  .tb-column .fs_btn_01 .fs_btn::after {
    width: 12px;
    height: 8px;
  }
  .tb-column .fs_btn_01_first .fs_btn, .tb-column .fs_btn_01_last .fs_btn {
    border-radius: 15px;
  }
  .tb-column .plateWhite {
    margin-right: 20px !important;
    margin-left: 20px !important;
    width: calc(100% - 40px) !important;
    overflow: hidden;
    background: #fff;
  }
  .tb-column .plateWhite::before {
    display: none;
  }
  .tb-column .slider01 .slick-next {
    top: auto;
    right: 20px;
    bottom: 0;
    -webkit-transform: none;
            transform: none;
    background: rgba(255, 255, 255, 0.75);
    border-radius: 10px 0 30px;
  }
  .tb-column .slider01 .slick-next::after {
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
  .tb-column .slider01 .slick-initialized.slick-slider .slick-list {
    width: calc(100% - 40px);
    margin-left: 20px;
    margin-right: 20px;
    border-radius: 0 0 30px 30px;
    overflow: hidden;
  }
  .tb-column .layout02 .ccm-layout-row {
    margin-bottom: 10px;
  }
  /* レイアウト直下のセルを無視して、その中のブロックだけで並び替えをする */
  .tb-order-children {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
  }
  .tb-order-children:has(.tb-column), .tb-order-children.tb-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
            flex-direction: column;
  }
  .tb-order-children > .ccm-layout {
    display: contents;
  }
  .tb-order-children > .ccm-layout > .ccm-layout-row {
    display: contents;
  }
  .tb-order-children > .ccm-layout > .ccm-layout-row > .ccm-layout-cell {
    display: contents;
  }
  .tb-order-children > .ccm-layout > .ccm-layout-row > .ccm-layout-cell > .ccm-area-styles:has(div[class*=order-]) {
    display: contents;
  }
  body > header > article .rrh-layout-wrapper-wide,
  body > footer > article .rrh-layout-wrapper-wide {
    padding: 0;
  }
  body > header > article .rrh-layout-wrapper,
  body > footer > article .rrh-layout-wrapper {
    padding-left: 20px;
    padding-right: 20px;
  }
  body > header > article .rrh-layout-wrapper .rrh-layout-wrapper,
  body > header > article .rrh-layout-wrapper .rrh-layout-wrapper-wide,
  body > header > article .rrh-layout-wrapper-wide .rrh-layout-wrapper,
  body > header > article .rrh-layout-wrapper-wide .rrh-layout-wrapper-wide,
  body > footer > article .rrh-layout-wrapper .rrh-layout-wrapper,
  body > footer > article .rrh-layout-wrapper .rrh-layout-wrapper-wide,
  body > footer > article .rrh-layout-wrapper-wide .rrh-layout-wrapper,
  body > footer > article .rrh-layout-wrapper-wide .rrh-layout-wrapper-wide {
    padding-left: 0;
    padding-right: 0;
  }
  #MainContents > div > article[id$=Parent] > .rrh-layout-wrapper-wide > div[id^=pt0] > .rrh-layout-wrapper-wide {
    padding: 0;
  }
  #MainContents > div > article[id$=Parent] > .rrh-layout-wrapper-wide > div[id^=pt0] > .rrh-layout-wrapper-wide .rrh-layout-wrapper,
  #MainContents > div > article[id$=Parent] > .rrh-layout-wrapper-wide > div[id^=pt0] > .rrh-layout-wrapper-wide .rrh-layout-wrapper-wide {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
  }
  #MainContents > div > article[id$=Parent] > .rrh-layout-wrapper-wide > div[id^=pt0] > .rrh-layout-wrapper-wide .rrh-layout-wrapper .rrh-layout-wrapper,
  #MainContents > div > article[id$=Parent] > .rrh-layout-wrapper-wide > div[id^=pt0] > .rrh-layout-wrapper-wide .rrh-layout-wrapper .rrh-layout-wrapper-wide,
  #MainContents > div > article[id$=Parent] > .rrh-layout-wrapper-wide > div[id^=pt0] > .rrh-layout-wrapper-wide .rrh-layout-wrapper-wide .rrh-layout-wrapper,
  #MainContents > div > article[id$=Parent] > .rrh-layout-wrapper-wide > div[id^=pt0] > .rrh-layout-wrapper-wide .rrh-layout-wrapper-wide .rrh-layout-wrapper-wide {
    padding-left: 0;
    padding-right: 0;
  }
  body > footer > article {
    width: 100% !important;
  }
  body > footer > article > .rrh-layout-wrapper,
  body > footer > article > .rrh-layout-wrapper-wide {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
            flex-direction: column;
  }
  body > footer > article .footerLogo {
    text-align: center !important;
  }
  body > footer > article .footerLinks {
    display: grid;
    gap: 0 2rem;
    grid-template-columns: repeat(2, 1fr);
  }
  body > footer > article .footerLinks > div {
    padding-right: 1rem;
  }
  body > footer > #footer-2Parent {
    padding-top: 50px;
  }
  body > footer > #footer-2Parent > .rrh-layout-wrapper {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  body > footer > #footer-2Parent > .rrh-layout-wrapper > div {
    width: 100%;
  }
  body > footer > #footer-2Parent #footer-2-2 {
    padding-bottom: 15px;
  }
  body > footer > #footer-2Parent #footer-2-2 > div {
    text-align: center;
  }
  body > footer > #footer-2Parent #footer-2-1,
  body > footer > #footer-2Parent #footer-2-2 {
    padding-bottom: 15px;
  }
  body > footer > #footer-3Parent > .rrh-layout-wrapper {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
            justify-content: center;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    -webkit-box-align: center;
    -webkit-align-items: center;
            align-items: center;
  }
  body > footer > #footer-3Parent > .rrh-layout-wrapper #footer-3-1 {
    display: none;
  }
  body > footer > #footer-3Parent > .rrh-layout-wrapper #footer-3-2 {
    float: none;
    width: 100%;
    text-align: center;
    border: 0;
    padding-top: 10px;
    padding-bottom: 0;
    margin-bottom: 0;
  }
  body > footer > #footer-3Parent > .rrh-layout-wrapper #footer-3-2 > div {
    text-align: center !important;
  }
  body > footer > #footer-3Parent > .rrh-layout-wrapper #footer-3-3 {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
            flex: 1 1 auto;
    padding: 15px 0;
    margin: 15px 0;
  }
  body > footer > #footer-3Parent > .rrh-layout-wrapper #footer-3-3 > div p {
    text-align: center;
  }
  body > footer > #footer-4Parent > .rrh-layout-wrapper #footer-4-1 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
            order: 2;
  }
  body > footer > #footer-4Parent > .rrh-layout-wrapper #footer-4-2 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
            order: 1;
  }
  body > footer > #footer-4Parent > .rrh-layout-wrapper #footer-4-2 > div {
    font-size: 1rem;
  }
  body > footer > #footer-4Parent > .rrh-layout-wrapper #footer-4-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
            order: 3;
  }
  body > footer > #footer-4Parent > .rrh-layout-wrapper > div {
    width: 100%;
    text-align: center;
  }
  body > footer > #footer-4Parent > .rrh-layout-wrapper > div > div {
    text-align: center !important;
  }
  body > footer > #footer-5Parent {
    padding-bottom: 40px;
  }
  body > footer > #footer-2Parent .en p, body > footer > #footer-3Parent .en p {
    font-size: 1.5rem;
  }
  #footer .copyright p {
    font-size: 1rem;
  }
  .extraContact {
    padding: 40px 0;
  }
  .extraContact .wrapper {
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
            flex-direction: column;
    gap: 20px;
  }
  .extraContactList a {
    height: 80px;
  }
  .extraContactList a span::before {
    margin-right: 1em;
  }
}


/* 画面サイズ 480px 未満 */
@media (max-width: 480px) {
  .mt-sp-n100px {
    margin-top: -100px !important;
  }
  .sp-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -webkit-flex-direction: row !important;
            flex-direction: row !important;
  }
  .faq-buttons {
    padding-bottom: 200px !important;
  }
  .pagetop_btn {
    font-size: 33px;
    outline-width: 8px;
    bottom: 25px;
    right: 25px;
  }
  .pagetop_btn::after {
    width: 16px;
    height: 10px;
  }
  .pagetop_btn:hover {
    outline-width: 11px;
  }
  .frontIntro {
    padding: 5rem 0;
  }
}

.works_bgW {background-color:#fff; padding-top:3rem;
margin-top:-3rem;
  position: relative;
  z-index: 10;
  border-radius:2rem 2rem 0 0 !important; padding-left:2rem;}

.works_bgG {background-color:#E9F6F6; padding-top:3rem;
margin-top:-3rem;
  position: relative;
  z-index: 10;
  border-radius:2rem 2rem 0 0 !important;
padding-left:2rem;}


#archiveBoxesC3 .archiveEachBox .eachArticle ul.post-cat {
    margin-top: 0rem;
    font-size: 0.8rem;
    float: left;
color:#E9F6F6;
    background: #008080;
    padding: 0.25rem 2rem;
}

#archiveBoxesC3 .archiveEachBox .eachArticle p.post-time{display:none;}

@media screen and (max-width: 480px){
#archiveBoxesC3 .archiveEachBox {margin: 0% 2% 2rem 2%;}}

.fclt_format_left {background-color:#008080; padding: 1rem; font-weight: bold; color:#fff;    text-align:  justify;}
.fclt_format_right {background-color:#008080; padding: 1rem ; color: #fff;    text-align:right;}

.body-pt009 .ccm-layout-row  {display: flow-root!important;}
.body-pt009  .style01 {padding-bottom: 8px;}
.txtcl-W{color:#fff;}

.bgslide_img{
  position: absolute;
  z-index: -2!important;}







/* 　--------------------　  animation-top 　--------------------　  */
/* Marquee styles */

.marquee {
overflow: hidden!important;
position:relative;
transform: scale(1.15) rotate(-13deg);
  --gap: 0rem;
  position: relative;
  display: flex;
  overflow: hidden;
  user-select: none;
  gap: var(--gap);
z-index:-1; position: relative;
}

.marquee img{width:30vw;}
@media screen and (max-width: 498px){.marquee {transform: scale(1.7) rotate(-5deg);  --gap: 0rem;}}

.marquee__content li{/*transition: .3s ease-in-out; */}
.marquee__content li:hover {/*
  filter: blur(3px);*/}

.marquee__content {
  flex-shrink: 0;
  display: flex;
  justify-content: space-around;
  gap: var(--gap);
  min-width: 60%;
}

@keyframes scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(calc(-100% - var(--gap)));
  }
}

/* Pause animation when reduced-motion is set */
@media (prefers-reduced-motion: reduce) {
  .marquee__content {
    animation-play-state: paused !important;
  }
}

/* Enable animation */
.enable-animation .marquee__content {
animation: scroll 100s linear infinite;
}

/* Reverse animation */
.marquee--reverse .marquee__content {
  animation-direction: reverse;
}

/* Pause on hover */
.marquee--hover-pause:hover .marquee__content {
  animation-play-state: paused;
}

/* Attempt to size parent based on content. Keep in mind that the parent width is equal to both content containers that stretch to fill the parent. */
.marquee--fit-content {
  max-width: fit-content;
}
.top-silide1_imgposition{ position: absolute;
    top: 8vh;}
.top-silide2_imgposition{    position: absolute;
    top: 60vh;}

@media screen and (max-width: 498px){
.top-silide1_imgposition{top: 6vh;}
.top-silide2_imgposition { top: 59vh;}
}

.hamidasi{overflow: hidden;
    position: relative;}

@media screen and (max-width: 498px){
.voice_svg {margin:0 -0.6px -1px -0.6px;}
}

.rectx-size{font-size:1.5rem;   letter-spacing: 0.5rem;   font-weight: bold;}


.bx-wrapper .bx-viewport{box-shadow :none; border:none; background-color:#fff0;}

.blob_css{background-color:hsla(180,41%,93%,1);
background-image:
radial-gradient(at 33% 7%, hsla(128,69%,73%,0.07) 0px, transparent 50%),
radial-gradient(at 82% 23%, hsla(180,41%,93%,1) 0px, transparent 50%),
radial-gradient(at 70% 39%, hsla(355,0%,100%,1) 0px, transparent 50%),
radial-gradient(at 0% 0%, hsla(180,41%,93%,1) 0px, transparent 50%);
 background-size: 200% 200%;/*サイズを大きくひきのばす*/
 animation: bggradient 20s ease infinite;}

@keyframes bggradient{
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

.padding-home_concept{padding: 0px 100px 20px 0px; text-shadow: 1px 2px 3px rgba(0,0,0,0.22);}

@media screen and (max-width: 480px) {
.frontIntroTitle{font-size:21px; margin-bottom: 3rem; }
.frontIntroTxt{ font-size: 15px; line-height: 2; }
.padding-home_concept{padding: 0px 70px 0px 00px;}}


.home_concept_sub{padding:0 100px 0 0 ;}
@media screen and (max-width: 480px) {
.home_concept_sub{padding:0 60px 0 0 ;}

.frontIntro::before{font-size: min(100px, 8vmin); right: 0.2em; top: 0rem;}
.layout01 p:not(.fs_btn_text_main){left: -6px;}
.layout01 h3 .en{ font-size: 21px;}
}

.none{display:none;}

.cntct_mg{margin:5rem 20px 2rem 20px;}
@media screen and (max-width: 480px) {
.cntct_mg{margin:5rem 0px 2rem 0px;}}

.fclt_pd{padding:100px 70px;}

@media screen and (max-width: 480px){
.fclt_pd{padding:5rem 2rem;}
}

.fclt_ttl{    font-size: min(30px, 3.4vmin); letter-spacing: 0.2em;
    line-height: 1.6;
    font-weight: bold;
}
@media screen and (max-width: 480px){
.fclt_ttl{    font-size: 2rem;}
}


.rgba_black {background-color:rgba(0, 0, 0, 0.5);}


.fclt_img_pd{padding:100px 70px 100px 70px;}
@media screen and (max-width: 480px) {
.fclt_img_pd{padding:15rem 70px 5rem 70px;}}

.rec_concept{padding: 100px 30px 100px 30px;}
@media screen and (max-width: 480px) {.rec_concept{padding: 100px 10px 60px 10px;}}

.rec_cncpt_ttl {padding:40px 100px ; width: auto;}
.rec_cncpt_sub{padding: 30px 30px 30px 30px;}

@media screen and (max-width: 1024px) {.rec_cncpt_ttl{width: 47vw;}
.rec_cncpt_sub br{display:none;}}

@media screen and (max-width: 480px) {.rec_cncpt_ttl{width: auto; padding:0px 100px ;}
.rec_cncpt_sub{padding: 0px 26px 30px 30px;}}

.hometop_soace{padding:86vh 0 0 0;}

@media (max-width: 480px){.faq-buttons {    gap: 60px 15px;}
.faq-buttons > .fs_button:nth-of-type(odd) {
  -webkit-transform: translateY(75%);
          transform: translateY(0%);
}
.tb-column .faq-buttons {
 padding-bottom: 5rem !important;}

.rgba_black_sp {background-color:rgba(0, 0, 0, 0.5);}
.hometop_soace{padding:70vh 0 0 0;}
}

.intv_other{padding:2rem;}

.intv_other img{ border-radius: 5rem;   -webkit-transition: 0.6s;
  transition: 0.6s;}
.intv_other img:hover { filter: blur(2px) contrast(90%); }
.body-pt003 #archiveBoxesC3 .archiveEachBox .eachArticle ul.post-cat{ color: none;background:none;} 

.body-pt003 .description {
    word-wrap: break-word;
    font-size: 1rem;
    writing-mode: vertical-rl;
    margin-top: -17rem;
    padding: 0.5rem;
    background: #fff;
    position: absolute;
    height: 10rem;
    color: #008080;
    font-weight: bold;
}

@media screen and (max-width: 820px) {.body-pt003 .description { font-size: 0.8rem;    margin-top: -14rem;}}
@media screen and (max-width: 480px) {.body-pt003 .description { font-size: 1rem;   margin-top: -21rem;}}

.body-pt003 #archiveBoxesC3 .archiveEachBox .eachArticle h3.post-title {
    font-size: 2rem;
    margin-bottom: 0.3em;
    align-content: center;
    text-align: center;
    font-weight: 500;
}

.body-pt102 .slick-prev::before{display:none;}
.body-pt102 .slick-next::before{display:none;}

.body-pt103 .slick-prev::before{display:none;}
.body-pt103 .slick-next::before{display:none;}

/*----------スマホ時改行あり----------*/
@media only screen and (min-width: 480px){
.sp_br br { display:none;}}

.body-pt008 .fs_btn {
  display: inline-block;}

/*----------アクセス（三木・有馬）非表示----------*/
.access_none { display:none; }


.en_concept_05 {  letter-spacing: 0.7rem;}



.slick-prev:before, .slick-next:before {
 color: rgba(0,0,0,0.00); 
}
.hasino-slick .slick-prev:before {
    content: ' \f053';
    font-family: monospace;
    background-image: url(https://work.fine-security.com/trial/tri_iritani_rd/index.php/download_file/37/);
}
.hasino-slick .slick-prev:before, .slick-next:before {
display:none;
    font-size: 70px;
    line-height: 0.5;}
@media screen and (max-width: 480px) {.hasino-slick .slick-prev:before, .slick-next:before {
display:none;
    font-size: 45px;}}

.hasino-slick .slick-next:before {
display:none;
    content: ' \f054';
    font-family: monospace;
    background-image: url(https://work.fine-security.com/trial/tri_iritani_rd/index.php/download_file/38/);}

.slick-prev, .slick-next {
    width: 80px;}


/*　----------　設備紹介　----------　*/
.fclt_left {
font-size: 0.9rem;
padding: 1rem 1rem 0 1rem;
vertical-align: top;
width: 45%;
font-weight: bold;
text-align: justify;
color: #808080;
}

.fclt_right {
font-size: 0.9rem;
text-align: right;
padding: 1rem;
vertical-align: top;
width: 55%;
}

.fclt_line {
border-top:1px solid #ccc;
}

.fclt_topline_left { font-size: 0.9rem;
border-top:2px solid #00e8d9;
padding: 1rem 1rem 0 0;
vertical-align: top;
width: 45%;
font-weight: bold;
text-align: justify;
color: #808080;
}
.fclt_topline_right {
border-top:2px solid #000;
font-size: 0.9rem;
text-align: left;
padding: 1rem 0;
vertical-align: top;
width: 35%;
}

