.h1_text .text-side,.h1_text .text{color:#fff;font-size:1.8rem}.h1_text .subtitle{letter-spacing:0px}.h1_text .headding_wrap,.h1_text .section_h1{color:#fff;font-size:4rem}.h1_text .subtitle_wrap{font-size:1.2rem}.h1_text .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:4rem}.h1_text .spacer-item_wrap:nth-child(2) .editable_wrap{font-size:1.2rem}@media only screen and (min-width: 768px){.h1_text .headding_wrap,.h1_text .section_h1{font-size:5rem;line-height:1.4}.h1_text .subtitle_wrap{font-size:1.5rem}.h1_text .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:5rem}.h1_text .spacer-item_wrap:nth-child(2) .editable_wrap{font-size:1.5rem}}
.title_text_generic02 .text-side{max-width:850px;margin:auto;text-align:center}.title_text_generic02 .editable a{color:#666}@media only screen and (min-width: 768px){.title_text_generic02 .text-side .text{text-align:center}}
.h2_left .subtitle{letter-spacing:0}.h2_left .headding_wrap{font-size:2rem}.h2_left .editable_wrap,.h2_left .subtitle_wrap{font-size:1.2rem}.h2_left .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:2rem}@media only screen and (min-width:768px){.h2_left .headding_wrap{font-size:3.5rem}.h2_left .editable_wrap,.h2_left .subtitle_wrap{font-size:1.5rem}.h2_left .spacer-item_wrap:nth-child(1) .editable_wrap{font-size:3.5rem}}
.faq_accordion .duplicatable-content{background-color:rgba(200,200,200,.4)}.faq_accordion .duplicatable-content:nth-child(n+2){margin-top:4rem}.faq_accordion .answer,.faq_accordion .question{display:table}.faq_accordion .answer>div,.faq_accordion .question>div{display:table-cell;vertical-align:middle}.faq_accordion .answer .faq_text,.faq_accordion .question .faq_text{padding:0 2rem}.faq_accordion .question{cursor:pointer;width:100%;font-weight:700;position:relative;padding:2rem 4rem 2rem 2rem}.faq_accordion .question:after{content:"";border-bottom:1px solid;border-right:1px solid;width:10px;height:10px;position:absolute;right:27px;top:50%;margin-top:-5px;-webkit-transform:rotate(45deg);transform:rotate(45deg);transition:.3s all}.faq_accordion .question.answer-open:after{-webkit-transform:rotate(225deg);transform:rotate(225deg);margin-top:0}.faq_accordion .answer{padding:2rem;display:none;position:relative}.faq_accordion .answer:before{content:"";position:absolute;width:96%;top:0;left:50%;margin-left:-48%;border-top:#333 1px dotted}.faq_accordion .faq_btn{font-size:2rem;padding:1rem 2rem}.faq_accordion .q_btn{width:53px}
#footer-section{z-index:3}@media only screen and (max-width: 768px){.jobs #footer-section .detail-side{display:none}}.footer-block .footer_tp_generic .detail-side{bottom:0;transition:bottom .5s}.footer_tp_generic{background-color:#fff;font-size:1.4rem}.footer_tp_generic .editable a{color:#666}.footer_tp_generic .footer-company{position:relative}.footer_tp_generic .footer-company::before{content:"";position:absolute;top:0;left:50%;width:100%;height:1px;background-color:#ccc;transform:translateX(-50%)}.footer_tp_generic .logo-side{padding:2rem 0;text-align:center}.footer_tp_generic .logo{max-width:200px;margin:0 auto 2rem}.footer_tp_generic .logo img{width:auto;max-width:100%}.footer_tp_generic .logo div{display:inline}.footer_tp_generic .menu-side{display:none}.footer_tp_generic .detail-side{text-align:center;font-size:1.4rem;display:-ms-flexbox;display:flex;-ms-flex-direction:row-reverse;flex-direction:row-reverse;background-color:#fff;position:fixed;bottom:-100%;left:0;width:100%;transition:bottom .8s .2s}.footer_tp_generic .detail-side_first{width:80px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;position:relative}.footer_tp_generic .detail-side_first .tel{line-height:1.4;letter-spacing:0}.footer_tp_generic .detail-side_first .tel a{position:absolute;width:100%;height:100%;top:0;left:0}.footer_tp_generic .detail-side_first .tel:after{content:"phone";font-family:"Material Icons";font-size:3.6rem;font-weight:400;font-style:normal;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;-webkit-font-feature-settings:"liga";font-feature-settings:"liga"}.footer_tp_generic .detail-side_first .hour{font-size:1.2rem;display:none}.footer_tp_generic .detail-side_second{-ms-flex-positive:1;flex-grow:1}.footer_tp_generic .linker a{background-color:#E4A847}.footer_tp_generic .letter{letter-spacing:.1em}.footer_tp_generic .copy{border-top:1px solid #ccc;font-size:1.2rem;padding:2rem 0;text-align:center}.footer_tp_generic .sns-side{margin-bottom:2rem}.footer_tp_generic .sns-side .duplicatable-container{display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center}.footer_tp_generic .sns-side .duplicatable-content{max-width:70px;padding:0 1rem}.footer_tp_generic .section_btn a{white-space:nowrap}.footer_tp_generic .back-top{cursor:pointer;width:40px;height:40px;border-radius:20px;border:1px solid #E4A847;position:absolute;bottom:10px;right:10px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.footer_tp_generic .back-top .arrow:before{content:"▲";color:#E4A847}@media only screen and (min-width: 768px){.footer_tp_generic .footer-company{padding:3.5rem 0 2rem}.footer_tp_generic .footer-company_inner{display:flex;flex-wrap:wrap}.footer_tp_generic .logo{display:block;margin:0 auto}.footer_tp_generic .menu-block{order:3;width:100%}.footer_tp_generic .menu-side{display:block;padding:3rem 0 5rem}.footer_tp_generic .menu-side .duplicatable-container{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;text-align:center;-ms-flex-pack:end;justify-content:center}.footer_tp_generic .menu-side .duplicatable-content{width:auto;padding:0 1rem;font-size:1.4rem}.footer_tp_generic .logo-side{order:1;width:200px}.footer_tp_generic .detail-side{order:2;-ms-flex-direction:row;flex-direction:row;-ms-flex-pack:justify;justify-content:space-between;text-align:left;margin:auto 0 auto auto;width:calc(100% - 220px);position:static;background-color:transparent}.footer_tp_generic .detail-side_first{margin-bottom:4rem;font-size:1.8rem;text-align:right;display:block}.footer_tp_generic .detail-side_first .tel{font-size:2.2rem}.footer_tp_generic .detail-side_first .tel:after{content:none}.footer_tp_generic .detail-side_first .tel a{position:relative;pointer-events:none}.footer_tp_generic .detail-side_first .hour{display:block}.footer_tp_generic .detail-side_second{max-width:300px;margin-bottom:3rem}.footer_tp_generic .detail-side>div{margin-bottom:0;width:100%}.footer_tp_generic .copy{padding:1.5rem 0;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;-ms-flex-align:center;align-items:center}.footer_tp_generic .sns-side{margin-bottom:0}.footer_tp_generic .sns-side .duplicatable-content{width:60px}.footer_tp_generic .section_btn{margin:auto 0 auto auto}.footer_tp_generic .back-top{bottom:80px}}@media only screen and (max-width: 768px){.footer_tp_generic .detail-side_first .tel{font-size:0 !important}.footer_tp_generic .detail-side_second .section_btn{max-width:none}.footer_tp_generic .detail-side_second .section_btn a{border-radius:0}}@media only screen and (min-width: 768px){_:-ms-lang(x)::-ms-backdrop,.footer_tp_generic .detail-side{align-items:center;margin:unset}_:-ms-lang(x)::-ms-backdrop,.footer_tp_generic .detail-side_second{margin-left:2rem}}@media only screen and (max-width: 768px){_::-webkit-full-page-media,_:future,:root .detail-side_first{text-align:center}_::-webkit-full-page-media,_:future,:root .tel.letter.editable{display:grid}}
@charset "UTF-8";#section-wrapper{background-color:#fff}#section-wrapper .headding{    font-family: YakuHanMP, 'Noto Serif', 'Hiragino Mincho ProN', eatYuM, 'Sawarabi Mincho', Meiryo, serif;
    line-height: ;
    letter-spacing: em;
}#section-wrapper .subtitle{    font-family: YakuHanMP, 'Noto Serif', 'Hiragino Mincho ProN', eatYuM, 'Sawarabi Mincho', Meiryo, serif;
    line-height: ;
    letter-spacing: em;
}#section-wrapper .letter{    font-family: YakuHanMP, 'Noto Serif', 'Hiragino Mincho ProN', eatYuM, 'Sawarabi Mincho', Meiryo, serif;
    line-height: ;
    letter-spacing: em;
}@media only screen and (min-width:769px){}#loading{position:fixed;top:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:9999;display:none}#loading .loading_inner{width:100%;height:90px;position:absolute;top:50%}#loading .loading_inner .loader_animation,#loading .loading_inner .loader_animation:before,#loading .loading_inner .loader_animation:after{border-radius:50%;width:2.4rem;height:2.4rem;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation:load7 1.3s infinite ease-in-out;animation:load7 1.3s infinite ease-in-out}#loading .loading_inner .loader_animation{color:#fff;font-size:12px;margin:10px auto;position:relative;top:-30px;text-indent:-9999rem;-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-animation-delay:-0.16s;animation-delay:-0.16s}#loading .loading_inner .loader_animation:before,#loading .loading_inner .loader_animation:after{content:'';position:absolute;top:0}#loading .loading_inner .loader_animation:before{left:-3.4rem;-webkit-animation-delay:-0.32s;animation-delay:-0.32s}#loading .loading_inner .loader_animation:after{left:3.4rem}@-webkit-keyframes load7{0%,80%,100%{box-shadow:0 2.45rem 0 -1.25rem}40%{box-shadow:0 2.45rem 0 0}}@keyframes load7{0%,80%,100%{box-shadow:0 2.45rem 0 -1.25rem}40%{box-shadow:0 2.45rem 0 0}}#loading .circle{position:fixed;top:50%;left:50%;width:50px;height:50px;margin:-25px 0 0 -25px;border-radius:50%;border:8px solid #f00;border-right-color:transparent;-webkit-animation:spin .8s linear infinite;animation:spin .8s linear infinite}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg);opacity:.2}50%{-webkit-transform:rotate(180deg);transform:rotate(180deg);opacity:1.0}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg);opacity:.2}}@keyframes spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg);opacity:.2}50%{-webkit-transform:rotate(180deg);transform:rotate(180deg);opacity:1.0}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg);opacity:.2}}

@charset "utf-8";


/* Safariのみパララックス無効 */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  _::-webkit-full-page-media, _:future, .image-bg {
    background-attachment: inherit !important;
  }
}

/*固定gnavi回避*/
html {
  scroll-padding-top: 70px; 
}
@media only screen and (max-width: 768px){
html {
  scroll-padding-top: 50px; 
}
}

/*ブログレイアウト*/
@media only screen and (min-width: 1025px){
section:first-of-type .content {
    padding: 0;
}
}

/*写真位置*/
#section_660231 .section_name {
    background-position: bottom;
}


/* フォント指定 */
body {
    font-family: "Zen Kaku Gothic New", sans-serif!important;
}

#section-wrapper h1,
#section-wrapper h2,
#section-wrapper h3,
#section-wrapper h4,
#section-wrapper .title,
#section-wrapper .headding  {
    letter-spacing: 0.05em;
    word-break: break-word;
    font-weight: bold;
    color:  #000;
    font-family: "Zen Kaku Gothic New", sans-serif!important;
}
#section-wrapper .subtitle {
    font-weight: bold;
    letter-spacing: 0.05em;
    word-break: break-word;
    color: #ff99be;
    font-family: "Zen Kaku Gothic New", sans-serif;
}
#section-wrapper .letter {
    font-size: 15px;
    color: #000;
    word-break: break-word;
    font-family: "Zen Kaku Gothic New", sans-serif;
}

/*gnavi*/
.gnav_pc .gnav_items li {
    padding: 0 12px!important;
}
.gnav_pc .gnav_items li a {
    position: relative;
    letter-spacing: 0.1em;
    padding: 1.5rem 0!important;
}
.gnav_items .active > a, 
.gnav_items .visit > a,
.gnav_items li a:hover {
    opacity: 1;
    color: #54a4db!important;
}
.gnav_pc .gnav_items li:not(:last-child) a::before {
  content: "";
  transform: scale(0, 1);
  transition: transform .35s;
  position: absolute;
  width: 80%;
  height: 4px;
  background-color: #54a4db;
  bottom: 0;
  left: 10%;
  margin-left:0 !important;
}
.gnav_pc .gnav_items  > li.active:not(:last-child) a::before,
.gnav_pc .gnav_items li:not(:last-child) a:hover::before {
  transform: scale(1, 1);
}
.gnav_pc .gnav_items li.gnav-submenu a::before {
  display: none;
}
.gnav_pc .gnav_items li:not(.gnav-submenu):last-child {
    background: #54a4db!important;
    transition: .3s;
}
.gnav_pc .gnav_items li:not(.gnav-submenu):last-child:hover{
    background: #ff99be!important;
}
/*gnaviアコーディオン*/
#global-nav .gnav_accordion_wide .gnav_pc .gnav_items li:hover .dropdownSubMenu {
    border-top: none;
    padding-bottom: 10px;
}
#global-nav .gnav_accordion_wide .gnav_pc .gnav_items li .dropdownSubMenu li a {
    text-align: center;
}
/*spハンバーガー*/
html.scroll-locked #global-nav .hamburger-box .gnav_bg {
    box-shadow: 5px 5px #54a4db;
}
/*ヘッダーlogo*/
#global-nav .gnav_accordion_wide .gnav_pc .logo_side img {
    max-width: 230px;
}

/*footer text*/
#footer-section .menu-side a {
  letter-spacing: 0.1em;
  color: #fff;
}
#footer-section .tel,
#footer-section .tel a {
  font-size: clamp(2rem, 3vw, 3rem) !important;
  letter-spacing: 0.1em;
  font-weight: bold;
  color: #fff!important;
  font-weight: bold!important;
}
#footer-section .hour {
  color: #fff!important;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  #footer-section .footer-company_inner .tel,
  #footer-section .footer-company_inner .tel a,
  #footer-section .footer-company_inner .hour  {
    font-size: 0!important;
    color: #54a4db!important
  }
#footer-section .section_btn a::before,
#footer-section .section_btn a::after {
    display: none;
}
}
/*footer copy*/
#footer-section .copy .letter {
    font-size: 12px!important;
    color: #fff!important;
}
.footer_tp_generic .copy {
    border-top: 1px solid #fff;
}
#footer-section .footer-company::before {
    display: none;
}
/*topに戻る*/
#footer-section .back-top {
    border: 2px solid #fff;
}
#footer-section .back-top .arrow:before {
    color: #fff;
}
/*フッターlogo*/
.footer_tp_generic .logo {
    max-width: 220px;
}
@media only screen and (min-width: 768px){
.footer_tp_generic .logo img {
    max-width: 120%;
}
}

/* ボタンホバーアクション */
.section_btn a {
  font-weight: bold;
  position: relative;
  cursor: pointer;
  user-select: none;
  letter-spacing: 0.1em;
  overflow: hidden;
  border: none!important;
  color: #fff!important;
  border-radius: 0;
  background: #54a4db!important;
  z-index: 1;
  font-size: 15px;
}
.section_btn a:before {
  position: absolute;
    content: "";
    top: 0px;
    left: 97%;
    width: 120%;
    height: 100%;
    transform: skewX(-40deg);
    background-color: #ff99be;
    transition: 0.3s;
    z-index: -1;
}
.section_btn a:hover {
  opacity: 1;
}
.section_btn a:hover:before {
  left: -10%;
}

/*blog worksホバー*/
.banner_text .banner_link {
  font-weight: bold;
  position: relative;
  cursor: pointer;
  user-select: none;
  letter-spacing: 0.1em;
  overflow: hidden;
  border: none!important;
  color: #fff!important;
  border-radius: 0;
  background: #54a4db!important;
  z-index: 1;
}
.banner_text .banner_link:before {
  position: absolute;
    content: "";
    top: 0px;
    left: 97%;
    width: 120%;
    height: 100%;
    transform: skewX(-40deg);
    background-color: #ff99be;
    transition: 0.3s;
    z-index: -1;
}
.banner_text .banner_link:hover {
  opacity: 1;
}
.banner_text .banner_link:hover:before {
  left: -10%;
}
.banner_text ._color_ {
    color: #54a4db!important;
}

/* フォーム送信ボタン */
.form_area .send_btn .section_btn input {
  background: #54a4db!important;
  transition: 0.3s;
  font-weight: bold;
  color: #fff;
  border-radius: 0;
  border: none;
}
.form_area .send_btn .section_btn input:hover {
  opacity: 1;
  background: #ff99be!important;
}

/*サンクスページ*/
.thanks_page {
    background-color: #f6f6f6;
}
.thanks_page .catch {
    padding: 5%;
    background-color: #fff;
    border: none !important;
}
.thanks_page .catch_text,
.thanks_page .catch_text span {
  text-align: center;
  text-shadow: none;
  color: #54a4db!important;
}
.thanks_page .catch_subtext {
  font-size: 15px!important;
  color: #000!important;
}
.thanks_page .catch_text span {
  padding: 0!important;
}
@media only screen and (max-width: 768px) {
.thanks_page .catch_text {
  font-size: 25px!important;
}
}

/*sitemap*/
.title_text_generic02 a {
  line-height: 8rem;
  color: #000!important;
  font-size: 18px!important;
  font-weight: 400;
}
.title_text_generic02 .text-side .text {
  text-align: center;
}
@media only screen and (max-width: 420px) {
.title_text_generic02 a {
  font-size: 15px!important;
}
}

/*contact*/
.contact_policy h3,
.check_before_contact h3 {
  font-size:  clamp(30px, 6vw, 35px) !important;
  position: relative;
  margin-bottom: 30px;
}
.contact_policy h3::after,
.check_before_contact h3::after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    background: repeating-linear-gradient(90deg, #54a4db 0%, transparent 100%);
    bottom: -30%;
    left: 0;
    z-index: 0;
}
.check_before_contact h3 font {
   color: #000!important;
}
.formapps .form_area .form-item_title label  {
  font-weight: bold;
  color: #000;
}
@media only screen and (max-width: 768px) {
.check_before_contact h3 font {
   display: block;
}
}

/* kv */
.h1_text .section-image_bg {
    background-color: rgba(0,0,0, .2);
    opacity: 1 !important;
}
.h1_text h1 {
    color: #fff!important;
    font-size: clamp(33px, 8vw, 45px) !important;
    text-shadow: 1px 1px 4px rgba(0, 0, 0, .4);
}
.h1_text .subtitle {
    font-size: 25px !important;
    text-shadow: 1px 1px 4px rgba(0, 0, 0, .4);
}
@media only screen and (max-width: 768px) {
.h1_text .subtitle {
    font-size: 20px !important;
}
}

/*infomation_all_generic*/
.infomation_all_generic .section-image_bg {
   background: linear-gradient(90deg, #54a4db, #d2e7f6)!important;
    opacity: 1!important;
}
.infomation_all_generic {
    padding: 6rem 0 ;
}
.infomation_all_generic h3 {
    color: #fff!Important;
    font-size: clamp(30px, 6vw, 35px) !important;
    line-height: 1.2;
}
.infomation_all_generic .subtitle {
    font-size: 25px!important;
    color: #fff!important;
}
.infomation_all_generic .letter {
    color: #fff!important;
    font-weight: bold;
    font-size: 18px!important;
}
.infomation_all_generic .tel-linker a,
.infomation_all_generic .tel-linker.letter {
    font-size:  clamp(20px,6vw, 25px) !important;
    color: #fff!important;
    font-weight: bold;
    letter-spacing: .1em;
}
@media only screen and (max-width: 768px){
.infomation_all_generic {
    padding: 4rem 0 ;
}
.infomation_all_generic .subtitle {
    font-size: 20px!important;
}
.infomation_all_generic .letter {
    font-size: 15px!important;
}
}

/*square_four_images_with_text */
.square_four_images_with_text .image-frame-bg .frame-image::after {
    content: "";
    background: #000;
    opacity: 0.2;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.square_four_images_with_text .duplicatable-content .frame-image {
  transition: .3s;
}
.square_four_images_with_text .duplicatable-content:hover .frame-image {
  transform: scale(1.2);
}
.square_four_images_with_text .image-frame-bg {
  overflow: hidden;
}
.square_four_images_with_text a:hover {
    opacity: 1;
}
.square_four_images_with_text h3 {
    color: #fff!important;
    font-size:  clamp(18px,6vw, 28px) !important;
    text-shadow: 1px 1px 4px rgba(0, 0, 0, .4);
}
@media only screen and (max-width: 420px){
.square_four_images_with_text.width-limit .section_inner {
    padding: 0;
}
.square_four_images_with_text h3 {
    font-size:  18px!important;
    letter-spacing: 0!important;
}
}

/* 見出しh2_left*/
.h2_left {
  padding: 6rem 0 0;
}
.h2_left h2 {
  font-size:  clamp(32px, 6vw, 40px) !important;
  position: relative;
  margin-bottom: 30px;
}
#section_660607 .h2_left h2 {
  font-size:  clamp(30px, 6vw, 38px) !important;
}
.h2_left h2 font,
.h2_left h2 span {
  color: #000!important;
}
.h2_left h2::after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    background: repeating-linear-gradient(90deg, #54a4db 0%, transparent 100%);
    bottom: -30%;
    left: 0;
    z-index: 0;
}
.h2_left .subtitle {
  font-size: 18px;
    padding-top: 20px;
    font-weight: normal!important;
}
@media only screen and (max-width: 768px) {
.h2_left h2 {
  padding: 4rem 0 0;
}
.h2_left .subtitle {
  font-size: 15px;
}
.h2_left h2 font,
.h2_left h2 span {
  display: block;
}
}

/* 見出し会社概要*/
.h2_center_generic01,
.h2_center_generic02 {
  padding: 6rem 0 4rem;
  background: transparent !important;
}
.h2_center_generic01 h2,
.h2_center_generic02 h2 {
  font-size:  clamp(30px, 6vw, 40px) !important;
  position: relative;
  margin-bottom: 30px;
}
.h2_center_generic01 h2::after,
.h2_center_generic02 h2::after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 4px;
    background: repeating-linear-gradient(90deg, #54a4db 0%, transparent 100%);
    bottom: -30%;
    left: 0;
    z-index: 0;
}
.h2_center_generic01 .subtitle,
.h2_center_generic02 .subtitle {
  font-size: 20px;
    padding-top: 10px;
}
@media only screen and (max-width: 768px) {
.h2_center_generic01,
.h2_center_generic02 {
  padding: 4rem 0 2rem;
}
.h2_center_generic01 .subtitle,
.h2_center_generic02 .subtitle {
  font-size: 18px;
}
}

/* card_icon*/
@media only screen and (min-width: 768px) {
.card_icon .duplicatable-content {
  width: calc((100% - 25px) / 2);
}
}
.card_icon .duplicatable-content {
    max-width: 550px;
}
.card_icon .card_icon-item {
    border: 3px solid #ff99be;
    background: #ffe5ee;
}
.card_icon .image-frame div img {
    object-fit: contain;
}
.card_icon .image-side {
    width: 80px;
    height: 80px;
}
@media only screen and (max-width: 420px) {
.card_icon .image-side {
    width: 60px;
    height: 60px;
}
}
.card_icon h3 {
    font-size: 23px!important;
    color: #1a547c!important;
}
@media only screen and (max-width: 768px) {
.card_icon h3 {
    font-size: 20px!important;
}
}

/* three_cards_title_sfiht */
.three_cards_title_sfiht .frame-image {
    display: none;
}
.three_cards_title_sfiht .text-side {
    background-image: linear-gradient(135deg, #54a4db, #93c6e8);
    box-shadow: 8px 8px 0 #d2e7f6;
}
#section-wrapper .three_cards_title_sfiht .text-side .headding {
    color: #fff!important;
    font-size: 45px;
}
.three_cards_title_sfiht .subtitle {
   color: #fff!important;
    font-size: 23px!important;
}
.three_cards_title_sfiht .letter {
   color: #fff!important;
}
@media only screen and (max-width: 767px) {
.three_cards_title_sfiht .text-side {
   padding: 2rem;
   margin-top: 0;
}
.three_cards_title_sfiht.width-limit .section_inner {
    padding: 0;
}
}

/*title_line_wide title_line_wide_light*/
.title_line_wide_light .section-animation-wrap .element-2,
.title_line_wide_light .section-animation-wrap .element-3,
.title_line_wide_light .section-animation-wrap .element-4,
.title_line_wide_light .section-animation-wrap .element-5 {
    display: none;
}
.title_line_wide_light .section-animation-wrap .element-1 {
    border: none;
    background-color: #d6eeff;
}
.title_line_wide_light h3 {
  font-size:  clamp(30px, 6vw, 32px) !important;
  color: #1a547c!important;
}
.title_line_wide_light .editable_wrap_title .letter {
  font-size: 25px!important;
  font-weight: bold;
  background: linear-gradient(transparent 60%, #ffe5ef 60%);
    display: inline;
    padding: 0 1rem;
}
.title_line_wide_light .letter {
  font-weight: 400;
}
@media only screen and (max-width: 768px) {
.title_line_wide_light .editable_wrap_title .letter {
  font-size: 20px!important;
}
}

/* three_cards_dot_separator*/
.three_cards_dot_separator {
    padding-top: 0!important;
}
.three_cards_dot_separator .frame-image {
    background-size: contain;
}
.three_cards_dot_separator .image-side {
    width: 38%!important;
    padding-top: 30px!important;
}
.three_cards_dot_separator .spaceable-top {
    padding-bottom: 0!important;
}
#content-wrapper #section-wrapper .three_cards_dot_separator .text-side .headding {
    font-size: 28px;
    margin-bottom: 25px;
    color: #1a547c !important;
}

/* alternating-backcolor*/
.alternating-backcolor .duplicatable-content:nth-child(odd) .dc-inner_bg .frame-image,
.alternating-backcolor .duplicatable-content:nth-child(even) .dc-inner_bg .frame-image {
    background-image: linear-gradient(135deg, #bddcf1, #e7f2fa);
}
.alternating-backcolor h3 {
    font-size: 23px!important;
    color: #1a547c!important;
}
@media only screen and (max-width: 768px) {
.alternating-backcolor h3 {
    font-size: 20px!important;
}
}

/*flow_cards*/
.flow_cards .dc-inner_bg .frame-image {
    background-image: linear-gradient(135deg, #54a4db, #93c6e8);
}
.flow_cards .number_wrap.letter {
    color: #54a4db!important;
    font-size: 2.3rem !important;
    font-weight: bold;
}
.flow_cards h3 {
    color: #fff!important;
  font-size:  clamp(20px, 8vw, 25px) !important;
    letter-spacing: 0!Important;
}
.flow_cards .letter {
    color: #fff!important;
}
.flow_cards .image-side .frame-image {
    border-top: 10px solid #ff99be;
}
@media screen and (max-width: 560px) {
.flow_cards .text_wrap {
  display: block;
  margin-top: 20px;
}
.flow_cards h3 {
  font-size:  23px!important;
}
}

/*faq_accordion*/
.faq_accordion .duplicatable-content {
    background-color: #ffe5ee;
}
.faq_accordion .question:after {
    border-bottom: 3px solid #000;
    border-right: 3px solid #000;
}

.faq_accordion .question .letter {
    font-size: 18px!important;
}
@media only screen and (max-width: 768px) {
.faq_accordion .question .letter {
    font-size: 15px!important;
}
}

/*standard_content_text_dup*/
.standard_content_text_dup .text-box {
    background-image: linear-gradient(135deg, #54a4db, #a8d1ed)!important;
    border: none;
    border-radius: 0;
}
.standard_content_text_dup h3 {
    font-size: 25px!important;
    color: #fff!important;
    border-bottom: 1px solid #fff;
    padding-bottom: 10px;
}
.standard_content_text_dup .letter {
    color: #fff!important;
}


#section_660730 .standard_content_text_dup .text-box {
    border: 2px solid #54a4db;
   background: #d6eeff !important;
}
#section_660730 .standard_content_text_dup h3 {
    color: #000!important;
    border-bottom: 1px solid #54a4db;
    padding-bottom: 10px;
}
#section_660730 .standard_content_text_dup .letter {
    color: #000!important;
}


/*new_standard_content_two_arrow*/
@media only screen and (min-width: 768px) {
.new_standard_content_two_arrow .duplicatable-content:nth-child(2n-1):not(:last-child) .image-side::before {
    color: #ff99be;
}
}
@media only screen and (max-width: 767px) {
.new_standard_content_two_arrow .duplicatable-content:nth-child(2n-1):not(:last-child)::after {
     color: #ff99be;
}
}
.new_standard_content_two_arrow h3 {
    font-size: 30px!important;
}
@media only screen and (max-width: 767px) {
.new_standard_content_two_arrow h3 {
    font-size: 25px!important;
}
}

/*circle-box_02*/
.circle-box_02 .image_wrap .image-frame-bg:before {
    content: "";
   background: #000;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    z-index: 2;
    opacity: .3;
}
.circle-box_02 .image_wrap .image_text {
    color: #fff!important;
    font-size: clamp(18px, 6vw, 23px) !important;
    text-shadow: 1px 1px 4px rgba(0, 0, 0, .4);
}
.circle-box_02 .text_wrap .editable {
    font-size: 18px!important;
    color: #000;
}
@media only screen and (max-width: 768px) {
.circle-box_02 .image_wrap .image_text {
    font-size: 18px!important;
}
.circle-box_02 .text_wrap .editable {
    font-size: 15px!important;
}
}


/* 見出しtitle_sub*/
.title_sub {
  padding: 6rem 0 4rem;
}
.title_sub h3 {
  font-size:  clamp(30px, 6vw, 35px) !important;
  color: #1a547c !important;
}
#section_660731 .title_sub h3 {
  font-size:  clamp(30px, 6vw, 35px) !important;
  color: #000!important;
  background: linear-gradient(transparent 60%, #d2e7f6 60%);
    display: inline;
    padding: 0 1rem 5px;
}
.title_sub h3 .subtitle {
  font-size:  18px;
}
@media only screen and (max-width: 768px) {
.title_sub {
  padding: 4rem 0 2rem;
}
}

/* half_two_image_misaligned*/
.half_two_image_misaligned {
    padding: 0;
}
.half_two_image_misaligned .frame-image::before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: #000;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    pointer-events: none;
    opacity: .2;
}
.half_two_image_misaligned h3 {
  font-size: 35px!important;
  color: #fff!important;
  text-shadow: 1px 1px 4px rgba(0, 0, 0, .4);
}
.half_two_image_misaligned .subtitle {
  font-size: 18px!important;
  color: #fff!important;
  text-shadow: 1px 1px 4px rgba(0, 0, 0, .4);
}

/* multiple_btn*/
.multiple_btn a {
  font-size: 15px!important;
}

/*time_table*/
.time_table .time_text {
    font-size: 2.5rem;
    font-weight: bold;
    color: #1a547c!important;
    line-height: 1.5;
}
.time_table .time_text span,
.time_table .time_text font {
    color: #1a547c!important;
}
.time_table .time_text:before {
    background: #54a4db;
}
.time_table .time_text:after {
    border: 2px solid #54a4db;
}
.time_table .duplicatable-container:after {
    background: #54a4db;
}
@media only screen and (max-width: 768px){
.time_table .time_text span,
.time_table .time_text font {
    display: block;
}
}
#section_660617 .time_table .description_container {
   background: #d6eeff;
}

/*テーブル*/
.table_light_generic .table_wrap .tr .th {
    background-color: #54a4db;
    color: #fff!important;
    font-weight: bold;
}
.table_light_generic .table_wrap .tr {
    border-bottom: 1px solid #fff;
}
.table_light_generic .duplicatable-container {
    border-top: 1px solid  #54a4db;
    border-right: 1px solid  #54a4db;
}
.table_light_generic .table_wrap .td {
    border-bottom: 1px solid #54a4db;
    background: #fff!important;
}
@media only screen and (max-width: 768px){
.table_light_generic .table_wrap .td {
    border-left: 1px solid #54a4db;
}
.table_light_generic .table_wrap .duplicatable-content:not(:last-child) .td {
    border-bottom: none;
    border-left: 1px solid  #54a4db;
}
}

/*テーブル02*/
.table_separated_border .section_inner {
    padding: 0px 0 80px;
}
.table_separated_border .th.letter {
    font-size: 18px!important;
   color: #1a547c!important;
}

/* mv */
.mainvisual_standard .section-image_bg {
    background-color: rgba(0,0,0, .1);
}
.mainvisual_standard .catch {
    padding: 0;
}
.mainvisual_standard h1 {
    color: #fff!important;
    font-size: clamp(35px, 8vw, 60px) !important;
    text-shadow: 1px 1px 4px rgba(0, 0, 0, .7);
    letter-spacing: 0!important;
}
.mainvisual_standard h1 span {
    color: #fff!important;
}
.mainvisual_standard .catch_subtext {
    background: linear-gradient(90deg, #2c8dd0, #93c6e8)!important;
    color: #fff!important;
    font-size: 30px;
    display: inline;
    padding: 10px 30px;
    line-height: 2.5;
}
@media only screen and (max-width: 768px) {
.mainvisual_standard h1 span {
    display: block;
}
.mainvisual_standard .catch_subtext {
    font-size: 20px;
    padding: 10px 20px;
    display: block;
    line-height: 1.5;
}
}

/* blog*/
.blog_unity .blog-side .category {
    color: #fff !important;
    font-weight: bold;
    background-color: #ff99be;
}
.blog_unity h3 {
    font-size: 30px!important;
}
.blog_unity .subtitle {
    font-size: 18px!important;
}

/* font*/
.half_wide h3 {
  font-size:  clamp(30px, 6vw, 35px) !important;
}
.half_wide_limited_height .subtitle {
  font-size:  15px!important;
}
@media only screen and (max-width: 767px) {
.half_wide h3,
.half_wide_limited_height h3,
.half_wide_limited_height .subtitle {
    text-align: center;
}
.half_wide .text-side_inner,
.half_wide_limited_height .text-side_inner {
    max-width: 90%;
}
}

.standard_content_four h3 {
  font-size:  clamp(20px, 6vw, 23px) !important;
}
@media only screen and (max-width: 767px) {
.standard_content_four h3 {
  font-size:  18px!important;
}
}

/* half_slanted_line */
/*
.half_slanted_line .text-side {
    background: #e7f2fa;
}
.half_slanted_line .text-side::after {
    background: -webkit-gradient(linear, right bottom, left top, color-stop(50%, transparent), color-stop(50.5%, #e7f2fa)) no-repeat top left / 100% 100%;
    background: -webkit-linear-gradient(bottom right, transparent 50%, #e7f2fa 50.5%) no-repeat top left / 100% 100%;
    background: linear-gradient(to top left, transparent 50%, #e7f2fa 50.5%) no-repeat top left / 100% 100%;
}
*/
@media only screen and (max-width: 768px) {
/*
.half_slanted_line .half_content {
     background: #e7f2fa;
}

.half_slanted_line .text-side::after {
    background: -webkit-gradient(linear, right bottom, left bottom, color-stop(50%, transparent), color-stop(50.5%, #e7f2fa)) no-repeat top left / 100% 100%;
    background: -webkit-linear-gradient(bottom right, transparent 50%, #e7f2fa 50.5%) no-repeat top left / 100% 100%;
    background: linear-gradient(to bottom left, transparent 50%, #e7f2fa 50.5%) no-repeat top left / 100% 100%;
}
*/
}
.half_slanted_line h3 {
    font-size: 35px!important;
}
.half_slanted_line .subtitle {
    font-size: 20px!important;
}
@media only screen and (max-width: 768px) {
.half_slanted_line h3 {
    font-size: 30px!important;
    text-align: center;
}
.half_slanted_line .subtitle {
    font-size: 18px!important;
    text-align: center;
}
}

/*20251224修正*/
.standard_content_four .section-content {
    border: 1px solid #ff99be;
    background-color: #ffe5ee;
    padding: 1rem;
}

.square_four_images_with_text::before {
    content: "";
    width: 100%;
    height: 50%;
    background-color: #ffe5ee;
    position: absolute;
    bottom: 0;
    left: 0;
    pointer-events: none;
}

.page-business .h2_left .subtitle span {
    text-decoration: underline 2px #ff99be;
    text-underline-offset: 4px;
}

.half_slanted_line .text-side {
    background-color: #fff;
}

#content-wrapper #section-wrapper .table_separated_border .duplicatable-content:nth-child(1) .th {
border-top: 1px solid #000;
}

#content-wrapper #section-wrapper .table_separated_border .td {
    border-bottom: 2px dotted #000;
}

@media (min-width:768px) {
#content-wrapper #section-wrapper .table_separated_border .th {
    border-bottom: 1px solid #000;
}

#content-wrapper #section-wrapper .table_separated_border .duplicatable-content:nth-child(1) .td {
    border-top: 2px dotted #000;
}
}

@media only screen and (max-width: 767px) {
    #content-wrapper #section-wrapper .table_separated_border .th {
        border-top: none;
        border-bottom: none;
    }
}

/* 20260324 修正 */
.header_logo,
.footer_tp_generic .logo-side {
    position;: relative;
   /* padding-right: 136px; */
}
.header_logo::before,
.footer_tp_generic .logo-side::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 285px;
    transform: translateY(-50%);
    width: 136px;
    height: 60px;
    background: url(https://d1i7na1hjknxjq.cloudfront.net/uploads/storage/image/file/510484/optimized_fn5IC7TyCd6yR42TwlDgjQ.png) no-repeat center / contain;
}
@media only screen and (min-width: 1025px) {
.footer_tp_generic.width-limit .section_inner {
        max-width: 1120px;
}
.footer_tp_generic .logo-side::before {
    top: 33%;
    left: 251px;
}
}
@media only screen and (max-width: 1024px) {
.header_logo, .footer_tp_generic .logo-side {
    margin-bottom: 5rem;
}
.footer_tp_generic .logo-side::before {
    left: 20px;
    top: 45%;
}
}
@media only screen and (max-width: 767.9px) {
.footer_tp_generic .logo-side::before {
    top: auto;
    bottom: -38%;
    left: 50%;
    transform: translateX(-50%);
}
}
@media only screen and (max-width: 540px) {
.header_logo::before {
    display: none;
}
.scroll-locked .header_logo::before {
    display: block;
}
.gnav_sp .gnav_items {
    padding-top: 8rem;
}
.header_logo::before {
    top: 105px;
    left: 2rem;
}
}
/*20260326 修正 */
.text_two_block .text-side_inner .text-side_description_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.text_two_block .text-side_inner .text-side_description_content {
    max-width: 610px;
}
.text-side_description_content.animation-fadein-left.animated-fadein-left:first-child {
  border: 1px solid #000;
}
.text-side_description_wrap font {
  font-family: "Yuji Boku", serif;
  font-size: 20px;
}
.text_two_block{
padding: 0rem 0rem;
}
