/*
 * 旧カスタマイザーの「追加CSS」(2026-09-29 にテーマへ移設)
 *
 * 以前は 外観 > カスタマイズ > 追加CSS(DB の custom_css 投稿。テーマごとに別レコード)にあった 42KB をそのまま移した。
 * 中身は本番(hello-elementor-child 用)と同じで、変えたのは次の2点だけ:
 *   - 自サイトの画像 URL をルート相対(/wp-content/uploads/…)にした(本番・テスト環境のどちらでも同じファイルで動く)
 *   - 旧ドメイン kg-m.jp を指していた画像 10 個を自サイトの uploads に直した(docs/decisions.md「旧ドメイン kg-m.jp を指したままの画像」)
 *
 * 読み込み位置は追加CSSと同じ head の最後(style.css の後。inc/customizer-css.php)。同じ詳細度のルールの勝ち負けを変えないため。
 * CSS の修正はこのファイルで行う。管理画面の追加CSSは空にしてある(書けば、このファイルの後に効く)。
 */
.custom-image-new img{
    position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; 
}

.custom-image-new a{
  width: 100%; /* This can be any width you want */
  padding-top: 56.25%; 
  
}
.custom-image-new{
    margin-bottom: 56.25%; 
}
.grecaptcha-badge { visibility: hidden; }
.menu-style .premium-menu-link-parent{
    padding: 8px 16px !important;
    border-radius: 10px;
}
.menu-style  .premium-menu-link-parent:hover{
    background-color: #151615 !important;
    color: #EFDF76 !important;
}
.menu-style .elementor-item-active{
    background-color: #151615 !important;
    color: #EFDF76 !important;
}
.menu-style .premium-sub-menu .premium-sub-menu-item:hover{
border-radius: 0 !important;
    background: transparent !important;
}
.menu-style .premium-sub-menu .premium-sub-menu-item a{
color: #F2F2F2 !important;
	font-family: "M PLUS 1";
font-size: 13px;
font-style: normal;
font-weight: 500;
line-height: 16px; /* 123.077% */
letter-spacing: 0.26px;
	padding: 8px 16px !important;
	width: 180px;
	&:after {
    position: absolute;
    content: ""; 
    border-top: 5px solid transparent;
    border-left: 5px solid #F2F2F2;
    border-bottom: 5px solid transparent;
    right: -16px;
  }
}
.menu-style .premium-sub-menu .premium-sub-menu-item:hover a:after{
	border-left: 5px solid #F6BE00;
}


.menu-style .premium-sub-menu .premium-sub-menu-item:hover a{
	color: #F6BE00 !important;
}

.sby_video_thumbnail{
border-radius:10px !important;
}
.show-in-pc{
	display:block;
}
.show-in-phone{
	display: none;
}
@media only screen and (max-width: 600px) {
  .show-in-phone{
	display: block !important;
	
}
	.show-in-pc{
display:none !important;
	}
}

/*  contact form */
.contact-form {
  max-width: 600px;
  margin: 0 auto;
  padding: 20px;
  background-color: #f9f9f9;
  border-radius: 8px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.contact-form .form-group {
  margin-bottom: 20px;
}

.contact-form label {
  display: block;
  margin-bottom: 8px;
  font-weight: bold;
}

.contact-form .required {
  color: red;
  margin-left: 5px;
}

.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"],
.contact-form textarea {
  width: calc(100% - 20px);  /* Adjusting width to fit padding */
  padding: 10px;
  margin: 0;  /* Removing margin */
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;  /* Ensuring padding and border are included in the width */
}

.contact-form textarea {
  resize: vertical;
  height: 100px;  /* Setting a default height */
}

.contact-form input[type="checkbox"] {
  margin-right: 10px;
}

.contact-form button[type="submit"] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #333;
    text-decoration: none!important;
    font-family: "Noto Sans", sans-serif;
    font-weight: normal;
    border: solid 1px #333;
    padding: 16px 16px 16px 48px;
    border-radius: 10px;
    transition: all 0.3s ease;
    background-color: #f6be00;
}
.contact-form button[type="submit"]:hover {
    background-color: #c29500!important;
}
.d-flex{
    display: flex;
    justify-content:center;
    gap:20px;
    align-items: center;
    width: 100%;
    margin:24px auto;
    
}
.d-flex div:first-child{
    color: var(--Light-Text-3rd, #7A7A7A);

/* Desktop/JP/KG/Body 2 M */
font-family: "M PLUS 1";
font-size: 17px;
font-style: normal;
font-weight: 500;
line-height: 160%; /* 27.2px */
letter-spacing: 0.68px;
margin-right: 6px
}
.d-flex.textarea-container div:first-child ,.d-flex.textarea-container div.label{
margin-top:20px
}
.d-flex div.label{
    color: var(--Light-Text-1st, #181818);

/* Desktop/JP/KG/Label 2 B */
font-family: "M PLUS 1";
font-size: 12px;
font-style: normal;
font-weight: 700;
line-height: 120%; /* 14.4px */
letter-spacing: 0.24px;
display: inline-flex;
padding: 8px 10px;
justify-content: center;
align-items: center;
gap: 8px;
border-radius: 10px;
background: #FFF;
}

.d-flex div p{
    margin:0rem;
}

.d-flex .select-box,

.d-flex .input{
    width: 60%
}
/* KG修正 */
.wpcf7 select{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border-radius: 16px;
    background: #FFF;
    padding: 20px 20px 20px 24px;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 6px;
    color: var(--Light-Text-1st, #181818);
    font-family: "Noto Sans", sans-serif;
    font-size: 17px;
    font-style: normal;
    font-weight: 400;
    line-height: 190%; /* 32.3px */
    letter-spacing: 1.02px;
    border:none;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    outline: none
}
/* KG修正 */
.d-flex div p .wpcf7-form-control-wrap input,
.d-flex div p .wpcf7-form-control-wrap textarea{
    width: 100%;
    display: flex;
border-radius: 16px;
background: #FFF;
padding: 20px 20px 20px 24px;
align-items: flex-start;
gap: 6px;
color: var(--Light-Text-3rd, #7A7A7A);

/* Desktop/JP/KG/Body 2 */
font-family: "Noto Sans", sans-serif;
font-size: 17px;
font-style: normal;
font-weight: 400;
line-height: 190%; /* 32.3px */
letter-spacing: 1.02px;
border:none;
}
.d-flex div p .wpcf7-form-control-wrap textarea{
    display: flex;
width: 100%;
height: 176px;
padding: 20px 20px 20px 24px;
align-items: flex-start;
gap: 6px;
flex-shrink: 0;
user-select: none;
	outline:none
}
.d-flex.textarea-container{
    align-items: start
}
.d-flex.textarea-container .textarea{
width:60%
}
div.checkbox{
	display:flex;
	justify-content:center;
	align-items:center;
	padding-left:100px
}
.wpcf7-list-item{
display:flex;
	gap:12px;
	justify-content:center;
	align-items:center;
}
.wpcf7-list-item-label{
color: var(--Light-Text-3rd, #7A7A7A);

/* Desktop/JP/KG/Body 2 M */
font-family: "Noto Sans", sans-serif;
font-size: 17px;
font-style: normal;
font-weight: 500;
line-height: 160%; /* 27.2px */
letter-spacing: 0.68px;
}
.custom-field-ni select, .custom-field-ni input{
    min-height: auto !important;
    padding-left: 24px;
     min-width:auto !important;
    display: inline-block !important;
	margin-bottom:1px;
	
}
.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option{
display:flex;
	justify-content:start;
	align-items:center;
	gap:12px
}
.elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option label{
padding-top:0rem
}
body .elementor-5058 .elementor-element.elementor-element-3e1596a .elementor-labels-above .elementor-field-group > label{
padding-top:0rem}
.elementor-5058 .elementor-element.elementor-element-3e1596a .elementor-field-group{
display:flex;
	justify-content:center;
	align-items:center
}

.elementor-5058 .elementor-element.elementor-element-3e1596a .elementor-field-group:last-child{
	align-items:start;
	justify-content:start
}
@media screen and (max-width:480px) {
   .kg-common-btn {
        min-height: 40px;
		 		align-items:middle;
        padding: 0px 10px !important;
        /* Button 2 */
        font-family: "Fivo Sans", Sans-serif !important;
        font-size: 13px !important;
        font-style: normal !important;
        font-weight: 500 !important;
        line-height: 16px !important; /* 123.077% */
        letter-spacing: 0.26px !important;
      }
}

/* 奥野追記 */
.mt0 {
    margin-top: 0!important;
}
.mt0 h3 {
    margin-top: 0!important;
}
.mt20 {
    margin-top: 20px!important;
}
.mb40 {
    margin-bottom: 40px!important;
}
    .alert-box {
      display: flex;
      align-items: center;
      background-color: #f8d7da;
      color: #842029;
      padding: 16px;
      border: 1px solid #f5c2c7;
      border-radius: 8px;
      font-family: Arial, sans-serif;
      width: 100%;
      margin: 20px auto;
    }
    .alert-title {
      font-weight: bold;
      margin: 0;
			white-space: nowrap;
    }
    .alert-divider {
      border-left: 1px solid #842029;
      height: 60px;
      margin: 0 16px;
    }
    .alert-message {
      flex-grow: 1;
    }
    .alert-message p {
      margin: 0;
    }
.kg-link-btn {
    position: relative;
    border-radius: 10px;
    background: #f6be00 !important;
    display: inline-flex;
    margin-top: 20px;
    padding: 20px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
    text-decoration: none!important;
    color: #333333 !important;
    font-style: normal;
    font-weight: 800;
    line-height: 16px;
    transition: all 0.3s ease;
}
.kg-link-btn .animated-box {
    width: 8.545px;
    height: 8.222px;
    background: #FFF;
    position: relative;
    transition: all 0.3s ease;
    border-radius: 20px !important;
}
.kg-link-btn:hover .animated-box {
    width: 16px;
    height: 16px;
    border-radius: 4px !important;
}
.kg-link-btn:hover .animated-box .triangle {
    left: 55%;
    opacity: 1;
}
.kg-link-btn .animated-box .triangle {
    width: 8px;
    height: 9px;
    position: absolute;
    top: 50%;
    left: -20%;
    transform: translate(-50%, -50%);
    transition: all 0.3s ease;
    opacity: 0;
}
#post_content a:hover {
	-webkit-transition: .3s all ease-in-out;
	transition: .3s all ease-in-out;
}
#post_content a:hover {
	color: #f6be00;
}
#page_content a.kg-common-btn {
	text-decoration: none!important;
	font-weight: bold!important;
	margin-top: 20px;
	padding: 20px!important;
}
#page_content a {
	color: #333;
	font-weight: bold;
	text-decoration: underline;
	-webkit-transition: .3s all ease-in-out;
	transition: .3s all ease-in-out;
}
a img {
    cursor: pointer;
    -webkit-transition: .3s all ease-in-out;
	transition: .3s all ease-in-out;
}
a img:hover {
    transform: scale(1.05);
}
a.elementor-toggle-title {
	text-decoration: none!important;
}
#page_content a:hover {
	color: #f6be00;
}
#page_content h1 {
    font-size: 32px;
    line-height: 1.5;
    font-weight: bold;
}
#page_content h2 {
    margin-top: 1.5rem;
    margin-bottom: .5rem;
    padding-bottom: .5rem;
    font-size: 26px;
    line-height: 1.5;
    font-weight: 600;
    border-bottom: 2px solid #333;
}
#page_content h3 {
    margin-top: 1.5rem;
    font-size: 22px;
    line-height: 1.5;
    font-weight: bold;
}
#page_content h2 + h3 {
    margin-top: 0;
}
#page_content h4 {
    margin-top: 1.5rem;
    font-size: 18px;
    line-height: 1.5;
    font-weight: bold;
}
#page_content p {
    line-height: 1.8;
}
#page_content ul,#page_content ol {
   margin-bottom: .9rem; 
}
#page_content li {
   line-height: 1.8; 
}
.img_spacer {
	aspect-ratio: 16 / 9;
}
@media (max-width: 767px) {
    .faq_wrap .elementor-tab-content {
        font-size: 14px;
    }
    #page_content h1 {
        font-size: 28px;
    }
    #page_content h2 {
        font-size: 24px;
    }
    #page_content h3 {
        font-size: 20px;
    }
    #page_content h4 {
        font-size: 16px;
    }
	#page_content ul,#page_content ol {
		padding-left: 30px; 
	}
}
@media (min-width: 431px) {
	.sp {
		display: none;
	}
}
@media (max-width: 430px) {
	.not_sp {
		display: none;
	}
}
/* TOPページカスタマイズ */
.main_container {
    margin: 120px auto 0 auto;
    padding: 0;
    width: 100%;
    color: #333;
    font-weight: 400;
    gap: 0;
}
.main_inner {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    gap: 0;
}
.page_inner {
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
.main_inner h2,.main_inner h3 {
    line-height: 1.3;
    font-family: "M PLUS 1", Sans-serif!important;
    font-weight: 600!important;
}
.main_inner h2 {
    margin-bottom: 30px;
    font-size: 40px;
}
.main_title h2  {
    font-size: 80px;
    font-weight: 500!important;
}
.sub h2 {
    font-size: 42px;
}
.main_container .sub h3 {
    font-size: 20px;
}
.main_inner h3 {
    margin-bottom: 20px;
    font-size: 24px;
}
.main_inner p {
    line-height: 1.8;
}
.main_inner .colums_half {
    padding: 0;
    width: 50%;
}
.main_inner .colums_half > div.e-con-inner {
    padding: 0;
    gap: 0;
}
.main_inner .white_box {
    padding: 30px;
    background-color: #fff;
    border-radius: 10px;
}
.main_container .title_number .elementor-widget-container p {
    margin-bottom: 0;
    font-size: 60px;
    font-family: "M PLUS 1", Sans-serif;
    font-weight: 400;
}
.main_inner h3.ceo {
    margin-top: 1em;
    font-size: 24px!important;
    font-weight: 500!important;
}
.ceo span {
    font-size: 16px!important;
    display: block;
}
.colums_35 {
    padding: 0;
    width: 35%;
    flex-direction: row;
}
.colums_45 {
    padding: 0;
    width: 45%;
    flex-direction: row;
}
.colums_55 {
    padding: 0;
    width: 55%;
    flex-direction: row;
}
.colums_75 {
    padding: 0;
    width: 75%;
    flex-direction: row;
}
/* 固定ページ */
.page_container {
    margin: 80px auto 0 auto;
    padding: 0;
    width: 100%;
    color: #333;
    font-weight: 400;
}
.page_inner {
    margin: 0;
    padding: 0;
}
.page_inner p {
    line-height: 1.8;
}
.page_inner ul,.page_inner ol {
    margin-bottom: 0.9rem;
}
.page_inner li {
    line-height: 1.8;
}
.page_inner h2 {
    /* margin-bottom: 30px; */
    font-size: 26px;
    font-family: "M PLUS 1", Sans-serif!important;
    font-weight: 600!important;
    line-height: 1.5;
}
.page_inner .en h2 {
    font-size: 30px;
    line-height: 39px;
}
.page_inner h3 {
    /* margin-bottom: 20px; */
    font-size: 22px;
    font-family: "M PLUS 1", Sans-serif!important;
    font-weight: 600!important;
    line-height: 1.5;
}
.page_inner .kg-common-btn {
    margin-top: 20px;
    margin-bottom: .9rem;
}
/* FAQページ */
.betterdocs-breadcrumb-list .betterdocs-breadcrumb-item:nth-child(2) {
    display: none;  
}
.betterdocs-breadcrumb .betterdocs-breadcrumb-list li.item-cat {
    display: none;
}
.betterdocs-toc-icon {
    display: none;
}
.betterdocs-main-category-folder .betterdocs-category-header-inner .betterdocs-category-icon {
    display: none!important;
}
.betterdocs-category-header-inner .betterdocs-sub-category-items-counts {
    display: none!important;
}
.betterdocs-title-excerpt-list h2 span {
    display: none!important;
}
.betterdocs-category-header-inner .betterdocs-sub-category-items-counts {
    display: none;
}
#betterdocs-breadcrumb {
    padding: 0;
}
h1.betterdocs-entry-title {
    font-family: "Jeko Demo", Sans-serif!important;
    line-height: 1.5!important;
    color: var(--e-global-color-text)!important;
}
#betterdocs-single-content p {
    line-height: 1.8;
}
.betterdocs-articles-list a:hover {
    background-color: #f6be000f!important;
}
.doc-category-layout-7 .betterdocs-main-category-folder {
    padding: 40px 20px;
}
.doc-category-layout-7 .betterdocs-main-category-folder .betterdocs-category-header-inner .betterdocs-category-title {
    margin-bottom: 0!important;
}
.doc-category-layout-7 .betterdocs-title-excerpt-lists .betterdocs-title-excerpt-list:hover {
    background: #f6be000f!important;/* 一覧ホバー色変更 */
}
.doc-category-layout-7 .betterdocs-title-excerpt-lists {
    margin-top: 0;
}
.betterdocs-full-sidebar-left.betterdocs-sidebar-layout-7 {
    z-index: 99!important;
}
.betterdocs-breadcrumb.layout-2 ul.betterdocs-breadcrumb-list {
    padding: 0;
}
#betterdocs-single-main .betterdocs-breadcrumb .betterdocs-breadcrumb-list {
    padding: 0;
}
#main .betterdocs-title-excerpt-lists .betterdocs-title-excerpt-list {
    padding: 0;
}
#main .betterdocs-title-excerpt-lists .betterdocs-title-excerpt-list h2 {
    position: relative;
    display: block;
    margin-bottom: 0;
}
#main .betterdocs-title-excerpt-lists .betterdocs-title-excerpt-list h2 a {
    display: block;
    padding: 1em 2em 1em 1em;
    font-size: 16px;
    line-height: 1.5;
}
#main .betterdocs-title-excerpt-lists .betterdocs-title-excerpt-list h2 a:after {
    background: no-repeat center / contain url(/wp-content/uploads/2025/03/arrow.svg);
    content: "";
    height: 12px;
    position: absolute;
    right: 1em;
    top: 50%;
    transform: translate(0, -50%);
    width: 12px;
}
#main .betterdocs-title-excerpt-lists .betterdocs-title-excerpt-list .update-date, #main .betterdocs-title-excerpt-lists .betterdocs-title-excerpt-list p {
    display: none;
}
.betterdocs-entry-content a {
    color: #333;
    text-decoration: underline;
    transition: all .35s ease-in-out;
}
.betterdocs-entry-content a:hover {
    color: #f6be00;
}
.betterdocs-content-inner-area #betterdocs-single-content h2 {
    margin-top: 2.5rem;
    font-size: 24px;
    line-height: 1.5;
    font-weight: bold;
}
.betterdocs-content-inner-area #betterdocs-single-content h3 {
    margin-top: 2.5rem;
    font-size: 20px;
    line-height: 1.5;
    font-weight: bold;
}
.betterdocs-content-inner-area #betterdocs-single-content h4 {
    margin-top: 1.5rem;
    font-size: 18px;
    line-height: 1.5;
    font-weight: bold;
}
.betterdocs-sidebar-content .betterdocs-category-icon .betterdocs-folder-icon {
    background: transparent!important;
}
.betterdocs-live-search .docs-search-result li a {
    white-space: break-spaces!important;
}
/* 採用 */
.recruit_title h2 {
    padding-left: .5em;
    border-left: 5px solid #333;
    padding-bottom: .2em;
    line-height: 1;
}
table.recruit_info th {
    background-color: hsla(0, 0%, 50.2%, .0705882353);
}
table.recruit_info td {
    background-color: #fff!important;
}
@media only screen and (max-width: 767px){
    .recruit_title h2 {
        padding-bottom: .1em;
    }
    table.recruit_info th,table.recruit_info td {
        display: block;
        width: 100%;
        font-size: 14px;
        text-align: left;
    }
}
@media only screen and (max-width: 1024px){
    .doc-category-layout-7 .betterdocs-title-excerpt-lists .betterdocs-title-excerpt-list {
        margin-top: 0;
        padding: 20px 0;
    }
}
@media only screen and (max-width: 767px){
    #betterdocs-search-modal {
        display: none;
    }
    #main .betterdocs-title-excerpt-lists .betterdocs-title-excerpt-list h2 a {
        font-size: 16px;
    }
    .betterdocs-content-inner-area #betterdocs-single-content h2 {
        font-size: 18px;
    }
    .betterdocs-content-inner-area #betterdocs-single-content h3 {
        font-size: 16px;
    }
    .betterdocs-content-inner-area #betterdocs-single-content h4 {
        font-size: 14px;
    }
}
@media (min-width: 768px) {
    h1.betterdocs-entry-title {
        font-size: 28px!important;
    }
    #betterdocs-single-content p {
        font-size: 1rem;
    }
}
/* 画面幅変更 */
@media (min-width: 768px) {
    .tablet {
        display: none;
    }
    .m-l50 {
        margin-left: 50px;
    }
    .m-r50 {
        margin-right: 50px;
    }
    .m-l30 {
        margin-left: 30px;
    }
    .m-r30 {
        margin-right: 30px;
    }
    .colums_img_r {
        margin-left: 50px;
    }
    .colums_img_l {
        margin-right: 50px;
    }
    .scroll_wrap {
        flex-wrap: wrap;
    }
}
@media (min-width: 1024px) {
    .main_container {
        max-width: 960px!important;
    }
    .page_container {
        max-width: 960px!important;
    }
}
@media (min-width: 1216px) {
    .main_container {
        max-width: 1140px!important;
    }
    .page_container {
        max-width: 1140px!important;
    }
}
@media (max-width: 1023px) {
    .main_inner,.page_inner {
        padding: 0 20px;
    }
}
@media (max-width: 767px) {
    .main_container .reverse {
        flex-direction: column-reverse;
    }
    .main_inner .colums_half {
        width: 100%;
        flex-direction: column;
    }
    .main_inner .white_box {
        margin-top: .9rem;
    }
    .colums_35,.colums_45,.colums_55,.colums_75 {
        width: 100%;
        flex-direction: column;
    }
    .main_inner h2 {
        font-size: 28px;
    }
    .main_title h2  {
        font-size: 70px;
    }
    .main_inner h3 {
        font-size: 22px;
    }
    .main_container .main_inner p,#page_content p,#page_content ul,#page_content ol,.page_container p,.page_container ul,.page_container ol {
        font-size: 14px;
    }
    .main_container .sub h2 {
        font-size: 28px!important;
    }
    .main_container .sub h3 {
        margin-bottom: 0;
    }
    .main_container .title_number .elementor-widget-container p {
        font-size: 40px;
    }
    .page_container {
        margin: 50px auto 0 auto;
    }
    .page_inner h2 {
        font-size: 24px;
    }
    .page_inner .en h2 {
        font-size: 28px;
        line-height: 36px;
    }
    .page_inner h3 {
        font-size: 20px
    }
    .scroll_wrap {
        flex-wrap: nowrap;
        overflow-x: scroll;
    }
    .youso {
        width: 100%;
        min-width: 60%;
    }
}
@media (max-width: 430px) {
    .main_title h2 {
        font-size: 50px;
    }
    .main_inner h3 {
        font-size: 20px;
    }
    .main_container .sub h2 {
        line-height: inherit;
    }
    .ceo span {
        font-size: 14px!important;
    }
}
.es-form-field-container .gjs-row {
    margin-bottom: 20px!important;
}
.es-form-field-container .gjs-cell {
    display: flex;
    align-items: center;
    width: 100%;
}
.es-field-label {
    flex: 0 0 30%;
}
.es-name,.es-email {
    flex: 1 0 70%;
    padding: 1.5rem!important;
    border: none!important;
    border-radius: 10px!important;
}
.es-form-field-container input[type="submit"] {
    margin-top: 30px;
    background-color: #333;
    color: #F2F2F2;
    font-size: 14px;
    font-weight: 700;
    line-height: 16px;
    border: none;
    border-radius: 10px;
    padding: 20px 35px 20px 35px;
    cursor: pointer;
}
.es-form-field-container input[type="submit"]:hover {
    background-color: #f6be00;
    color: #333;
    border: none;  
}
@media (max-width: 767px) {
    .es-form-field-container .gjs-cell {
        flex-direction: column;
        align-items: baseline;
        margin-bottom: 20px;
    }
}
/* 募集職種フレーム */
.card_container {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}
.card,#page_content .card {
    width: calc(33.3334% - 13.3334px);
    background-color: white;
    border-radius: 10px;
    padding: 20px;
    text-align: center;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1)!important;
    text-decoration: none;
    color: inherit;
    transition: transform 0.2s;
}
#page_content .center {
    display: flex;
    justify-content: center;
    align-items: center;
}
.card:hover {
    transform: scale(1.05);
}
.card h3,#page_content .card h3 {
    margin: 0!important;
    font-size: 16px;
    color: #333;
    line-height: 1.8;
}
.card hr {
    width: 50%;
    border: 0;
    border-top: 2px solid #333;
    margin: 10px auto;
}
.card p {
    margin: 0;
    font-size: 16px;
    color: #333;
}
@media (max-width: 767px) {
    .card,#page_content .card {
        width: calc(50% - 10px);
    }
}
/* スクロールコンテンツ */
.scroll_wrap {
    display: -webkit-box;
    display: flex;
    gap: 10px;
}
.scroll_card {
    width: calc(33.3334% - 10px);
    background-color: white;
    border-radius: 10px;
    padding: 40px;
    display: -webkit-box;
    display: flex;
    flex-direction: column;
    text-align: center;
    gap: 20px;
    color: #333;
}
.scroll_card hr {
    width: 25%;
    border: 0;
    border-top: 2px solid #333;
    margin: 0 auto;
}
.scroll_card img {
    width: 50px;
    height: 50px;
    margin: 0 auto;
}
.step_number {
    display: block;
    font-size: 20px;
    font-family: "M PLUS 1", Sans-serif;
    font-weight: 600;
}
.step_header {
    margin-bottom: 0;
    font-size: 20px;
    font-family: "M PLUS 1", Sans-serif;
    font-weight: 600;
    line-height: inherit!important;
}
.step_detail p {
    margin: 10px 0;
}
@media (max-width: 768px) {
    .scroll_wrap {
        flex-wrap: nowrap;
        overflow-x: scroll;
    }
    .scroll_card {
        width: 100%;
        min-width: 80%;
    }
    .step_detail {
        font-size: 14px;
        text-align: left;
    }
}
.thumb_img {
    overflow: hidden;
}
.owl-carousel .owl-nav {
    position: relative;
}
.owl-carousel .owl-nav .owl-prev,.owl-carousel .owl-nav .owl-next {
    top: 10px!important;
}
.owl-carousel .owl-nav .owl-prev:hover,.owl-carousel .owl-nav .owl-next:hover {
    background-color: #fff!important;
    color: #000!important;
}
@media (any-hover: hover) {
    .owl-carousel .owl-nav .owl-prev:hover,.owl-carousel .owl-nav .owl-next:hover {
        background-color: #000!important;
        color: #fff!important;
    }
}
.owl-carousel .owl-nav .owl-prev,.owl-carousel .owl-nav .owl-next {
    top: 10px!important;
}
@media (min-width: 768px) {
    .owl-carousel .owl-nav .owl-prev,.owl-carousel .owl-nav .owl-next {
        top: 10px!important;
    }
}
a.basic_link {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #333;
    text-decoration: none!important;
    font-family: "Noto Sans", sans-serif;
    font-weight: normal;
    border: solid 1px #333;
    padding: 16px 40px 16px 32px;
    border-radius: 10px;
    transition: all 0.3s ease;
    background-color: #fff;
}
a.basic_link:hover {
    color: inherit!important;
    background-color: #f6be00;
}
a .icon-arrow {
    display: flex;
    width: 1em;
}
#page_content a.basic_link {
    font-weight: normal;
}
a.center_btn {
    margin-right: auto;
    margin-left: auto;
}
a.accent_btn {
    border: 0;
    font-weight: 600!important;
    background-color: #f6be00;
}
a.center_accent_btn {
    margin-right: auto;
    margin-left: auto;
    border: 0;
    font-weight: 600!important;
    background-color: #f6be00;
}
a.center_accent_btn:hover,a.accent_btn:hover {
    background-color: #c29500;
}
a.header_btn {
    padding: 16px 30px!important;
    width: fit-content!important;
    font-size: 14px;
    font-weight: 600!important;
    background-color: #f6be00;
    border: 0;
}
a.header_btn:hover {
    background-color: #c29500;
}
.header_btn .icon-arrow {
    margin-left: 1em;
}
a.togglemenu_btn {
    font-size: 14px;
    font-weight: 600!important;
    background-color: #f6be00;
    border: 0;
    z-index: 99;
}

@media (min-width: 431px) {
    a.basic_link {
        width: 300px;
    }
}
@media (max-width: 1024px) {
    a.header_btn {
        padding: 8px 10px!important;
        font-size: 12px!important;
    }
    a.header_btn .icon-arrow {
        margin-left: .5em;
    }
}
@media (max-width: 430px) {
    a.basic_link {
        padding: 16px 2.5rem 16px 16px;
    }
    .link_text {
        margin-right: auto;
        margin-left: auto;
    }
}
input::-webkit-input-placeholder {
    font-family: "Noto Sans", sans-serif;
}
input:-moz-placeholder {
    font-family: "Noto Sans", sans-serif;
}
input::-moz-placeholder {
    font-family: "Noto Sans", sans-serif;
}
input:-ms-input-placeholder {
    font-family: "Noto Sans", sans-serif;
}
.sby_item.sby_num_diff_hide {
    display: none !important;
}
.faq_title h2 {
    display: flex;
    align-items: center;
}
.frequent h2 {
    padding-bottom: 10px;
    border-bottom: 1px solid #333;
    text-align: center;
}
.faq_loop .elementor-loop-container {
    gap: 0!important;
}
.faq_title h2::before {
    content: '';
    display: inline-block;
    margin-right: 10px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.rule h2::before {
    width: 30px;
    height: 30px;
    background-image: url(/wp-content/uploads/2024/08/card-checklist.svg);
}
.spec h2::before {
    width: 30px;
    height: 30px;
    background-image: url(/wp-content/uploads/2024/08/icon_D-3.png);
}
.battery h2::before {
    width: 30px;
    height: 30px;
    background-image: url(/wp-content/uploads/2024/08/battery-full.svg);
}
.maintenance h2::before {
    width: 30px;
    height: 30px;
    background-image: url(/wp-content/uploads/2024/08/tools.svg);
}
.buy h2::before {
    width: 30px;
    height: 30px;
    background-image: url(/wp-content/uploads/2024/08/cart-fill.svg);
}
.option h2::before {
    width: 30px;
    height: 30px;
    background-image: url(/wp-content/uploads/2024/08/gear.svg);
}
#spec,#ability,#durability,#comfort,#practicality,#entertainment,#safety {
    margin-top: -100px;
    padding-top: 100px;
}
/* FAQ */
.faq_wrap .elementor-toggle-item {
    background: transparent;
    border-radius: 0;
    font-size: 15px;
}
.faq_wrap .elementor-toggle .elementor-tab-title {
    padding: 5px 20px 5px 24px!important;
    line-height: 1.8!important;
}
.faq_wrap .elementor-tab-content a {
    display: block;
    margin-top: .5em;
    color: inherit;
    font-weight: bold;
    text-decoration: underline;
    -webkit-transition: .3s all ease;
	transition: .3s all ease;
}
.faq_wrap .elementor-tab-content a:hover {
    color: #f6be00!important;
}
.faq_wrap .elementor-toggle .elementor-tab-title .elementor-toggle-icon {
    width: inherit;
}
.faq_wrap .elementor-toggle .elementor-tab-title .elementor-toggle-icon svg {
    width: 12px;
    height: 12px;
    margin-top: 6px;
    margin-inline-start: 0;
}

.faq_wrap .elementor-toggle-icon-left {
    margin-right: .5em!important;
}
.elementor-tab-title::before {
    content: '';
    position: absolute;
    top: 11px;
    left: 0;
    width: 1em;
    height: 1em;
    background-image: url(/wp-content/uploads/2024/07/Frame-35252-1.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}
.faq_footer a {
	-webkit-transition: .3s all ease;
	transition: .3s all ease;
}
.faq_footer a:hover {
    color: #f6be00!important;
}
.elementor-active::before {
    background-image: url(/wp-content/uploads/2024/07/Frame-35252.svg);
}
@media (max-width: 767px) {
    .faq_wrap .elementor-toggle .elementor-tab-title {
        padding-right: 0!important;
    }
    .faq_wrap .elementor-tab-content {
        padding-right: 0!important;
    }
}
@media (max-width: 430px) {
    .faq_wrap .elementor-toggle-item,.faq_wrap .elementor-tab-content {
        font-size: 14px;
    }
}
table.specifications th {
    background-color: #f8f9fa!important;
}
table.specifications td {
    background-color: #fff!important;
    text-align: center;
}

.cus-carousel .elementor-swiper-button-prev, .cus-carousel .elementor-swiper-button-next{
        border-radius: 10px !important;
    width: 50px;
    height: 50px;
    line-height: 50px;
    font-size: 12px;
    background-color: #FFFFFF;
    color: #000000;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
}
.swiper-pagination-bullets.swiper-pagination-horizontal{
left:50% !important;
}

/* start breadcrumb */

.elementor-widget-shortcode span {
	color: #999;
	font-size: 12px;
	font-weight: 600;
/* 	margin-left: 20px; */
}
.elementor-widget-shortcode span span a {
    color: #999;
    text-decoration: none;
}
.elementor-widget-shortcode .breadcrumb_last {
	color: #313636;
}
.elementor-widget-shortcode span span a:hover {
    color: #313636;
}

.elementor-widget-shortcode .elementor-shortcode {
    
    align-items: center;
    gap: 10px;
}
.elementor-widget-shortcode .elementor-shortcode span {
    display: flex;
    align-items: center;
	flex-wrap:wrap;
}
.elementor-widget-shortcode .elementor-shortcode span + span::before {
    content: "";
    height: 1px;
    width: 1.5rem;
    display: block;
    background-color: #ddd;
    margin-right: 10px;
		margin-left: 10px;
}

@media screen and (min-width: 375px) and (max-width: 767px) {
	 .elementor-widget-shortcode span {
			font-size: 8px;
		}
	.elementor-widget-shortcode span span a {
			white-space: nowrap;
	}
	
	.elementor-widget-shortcode .elementor-shortcode span + span::before {
		margin-right: 4px;
		margin-left: 4px;
	}
	.elementor-widget-shortcode .elementor-shortcode span + span::before {
		width: 1rem;
	}
	.elementor-widget-shortcode .elementor-shortcode span span {
		margin-top: 5px;
	}
}
/* end breadcrumb */


/* start custom news category  */
.short-code-category-box {
    background-color: #222222;
    color: #FFFFFF;
    padding: 6px 10px;
    border-radius: 10px;
    text-align: center;
    display: inline-block;
    font-size: 13px;
    line-height: 1.5;
    font-weight: 700;
}

.short-code-category-box .short-code-category-link {
    color: #FFFFFF;
    text-decoration: none;
}

.short-code-category-box .short-code-category-link:hover {
    color: #F6BE00;
}
/* end custom news category */

/* faq filter */
#faq-filter-form .form-div {
	display: flex;
	justify-content:space-between;
}
#faq-filter-form .form-div .title {
	width: 621px;
	height: 56px;
	border-radius: 10px;

	background: #FFF;
	border:none;
	color: #222;
	font-family: "M PLUS 1";
	font-size: 16px;
	font-style: normal;
	font-weight: 500;
	line-height: 100%;
	letter-spacing: 0.16px;
	outline: none;
}
#faq-filter-form .form-div .title:focus {
	border: none;
	outline: none;
}
#faq-filter-form .form-div .category {
    width: 200px;
    height: 56px;
    border-radius: 10px;
 
    background: #FFF url('data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2216%22%20height%3D%226%22%20viewBox%3D%220%200%2016%206%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M8.35664%205.75341C8.14252%205.90175%207.85887%205.90175%207.64475%205.75341L0.983749%201.13883C0.480127%200.789938%200.727018%201.51017e-06%201.33969%201.45661e-06L14.6617%202.91961e-07C15.2744%202.38399e-07%2015.5213%200.789935%2015.0176%201.13883L8.35664%205.75341Z%22%20fill%3D%22%23181818%22/%3E%3C/svg%3E') no-repeat right 10px center;
    background-size: 16px 6px;
    border: none;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 30px;
	cursor:pointer
}
 
#faq-filter-form .form-div .category option {
	 background-color: #F5F5F5 !important; 
	color:#181818
}
#faq-filter-form select option:hover {
    background-color: #ffffff; /* Custom option background */
    color: red; /* Custom option text color */
}
#faq-filter-form .form-div .order_status {
	width: 103px;
	height: 56px;
	border-radius: 10px;

	background: #FFF;
	background: #FFF url('data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2216%22%20height%3D%226%22%20viewBox%3D%220%200%2016%206%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M8.35664%205.75341C8.14252%205.90175%207.85887%205.90175%207.64475%205.75341L0.983749%201.13883C0.480127%200.789938%200.727018%201.51017e-06%201.33969%201.45661e-06L14.6617%202.91961e-07C15.2744%202.38399e-07%2015.5213%200.789935%2015.0176%201.13883L8.35664%205.75341Z%22%20fill%3D%22%23181818%22/%3E%3C/svg%3E') no-repeat right 10px center;
    background-size: 16px 6px;
    border: none;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 30px;
		cursor:pointer

}

#faq-filter-form .form-div button {
	color: #FFFFFF;
	border: none;
	border-radius: 10px;
	background: #181818;

	height: 56px;
	outline: none;
	display:flex;
	justify-content: center;
	align-items: center;
}
#faq-filter-form .form-div button svg {
	margin-right: 10px;
}


.faq-card-parent {
  display: flex;
	gap: 2%;
}
.faq-card {
	width: 49%;
	background: #FFFFFF;
	border-radius: 20px;
	padding: 20px 30px;
	margin-top:50px;
	max-height: 200px;
	min-height: 190px;
}

/* .faq-card .faq-image img {
	width: 400px;
	height: 300px;
	object-fit: cover;
	border-radius: 10px;
} */

.faq-card .faq-image img{
	width: 376px;
    height: 211px;
    object-fit: cover;
		border-radius: 10px;
	
}

.faq-card .faq-title {
	color: #212725;
	font-family: "Fivo Sans Modern";
	font-size: 22px;
	font-style: normal;
	font-weight: 450;
	line-height: 130%;
	letter-spacing: -0.24px;
	text-decoration: none;
}
.faq-card .faq-title:hover {
	color: #F6BE00;
}
.faq-card .faq-description {
	color: #404040;
	font-family: "Fivo Sans Modern";
	font-size: 15px;
	font-style: normal;
	font-weight: 400;
	line-height: 180%;
	letter-spacing: 1px;
	margin-top: 15px;
	display: none;
}
.faq-card .faq-category {
	padding: 5px 7px;
	background: #222222;
	border-radius: 10px;
	color: #FFFFFF !important;
	text-decoration: none;
	font-size: 12px;
	font-weight: 500;
	height: fit-content;
}
.faq-card .faq-date {
	color: #343434;
	font-size: 13px;
	font-style: normal;
	font-weight: 700;
	line-height: 100%; /* 10px */
	letter-spacing: 0.1px;
	padding:10px
}
.custom-pagination {
	display:flex;
	justify-content:center
}
.custom-pagination .page-numbers{
    color: #343434;
    background-color: white;
    padding: 5px 10px;
    margin: 0 5px;
border-radius:10px;
	padding:12px 15px;
    text-decoration: none;
    display: inline-block;
    transition: all 0.3s ease;
}

.custom-pagination .page-numbers:hover {
    color: white;
    background-color: #343434;
}

.custom-pagination .current {
    color: white;
    background-color: #343434;
   padding:12px 15px;
    margin: 0 5px;
   
}

.custom-pagination .prev.page-numbers{
	display:none
}


.custom-pagination .next.page-numbers{
	display:none
}
@media screen and (max-width:756px){
	.faq-card{
flex-direction:column;
		justify-content:center;
		align-items:center
	}
	.faq-info{
width:100%}
	#faq-filter-form .form-div {
		flex-wrap:wrap;
	}
}

@media screen and (max-width:500px){
	#faq-filter-form .form-div .category,#faq-filter-form .form-div .order_status,#faq-filter-form .form-div button{
width:100%;
		padding:20px 
	}
	#faq-filter-form .form-div .title{
		padding:20px
	}
}







.faq-custom-dropdown {
    position: relative;
    display: inline-block;
    width: 100%;
	background-color:#fff;
	color:#181818
}

.faq-custom-dropdown .dropdown-toggle {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    background-color: #fff;
    cursor: pointer;
    text-align: left;
    border-radius: 4px;
}

.faq-custom-dropdown .dropdown-options {
    display: none;
    position: absolute;
    width: 100%;
    border: 1px solid #ccc;
    background-color: #fff;
    z-index: 1000;
    max-height: 200px;
    overflow-y: auto;
    list-style: none;
    margin: 0;
    padding: 0;
    border-radius: 4px;
}
.faq-custom-dropdown .dropdown-options{
top:56px}

.faq-custom-dropdown .dropdown-options li {
    padding: 10px;
    cursor: pointer;
    transition: background 0.3s;
}

.faq-custom-dropdown .dropdown-options li:hover {
    background-color: #f0f0f0; /* Hover effect */
}



.faq-custom-dropdown.category-dropdown{
width:200px;
	display:flex;
	justify-content:center;
	align-items:center;
	gap:10px;
	border-radius:10px
}
.faq-custom-dropdown.order-dropdown{
width:103px;
	display:flex;
	justify-content:center;
	align-items:center;
	gap:10px;
	border-radius:10px
}
#faq-filter-form .form-div button.dropdown-toggle{
background-color:#fff;
color:#181818	;
	gap:10px
}

@media screen and (max-width:850px){
		#faq-filter-form .form-div{
display: flex;flex-wrap:wrap
	}
}
@media screen and (max-width:765px){
	.faq-card{
		background-image:url('/wp-content/uploads/2024/05/Screenshot-from-2024-07-18-11-36-27.png');
		border-radius:10px
	}
	.faq-card .faq-image{
width:100%}
	.faq-card .faq-image img{
width:100%;
	height:auto}
}

@media screen and (max-width:500px){
	.faq-custom-dropdown.category-dropdown,.faq-custom-dropdown.order-dropdown,#faq-filter-form .form-div .title{
width:100%;
	}
	#faq-filter-form .form-div button.dropdown-toggle{
		display:flex;
		justify-content:space-between;
		
	}
}
/* width */
.faq-custom-dropdown .dropdown-options::-webkit-scrollbar {
  width: 10px;
}
/* Track */
.faq-custom-dropdown .dropdown-options::-webkit-scrollbar-track {
  background: #F5F5F5
 
}
/* Handle */
.faq-custom-dropdown .dropdown-options::-webkit-scrollbar-thumb {
  background: #CFCFCF;
}

/* フォームカスタマイズ */
#crmWebToEntityForm {
    padding: 0!important;
    max-width: 100%!important;
    background-color: transparent!important;
}
.zcwf_lblLeft .zcwf_row {
    display: flex;
    align-items: center;
    margin: 0!important;
}
.elementor-widget-container .zcwf_lblLeft .zcwf_col_lab {
    display: block;
    margin: 0;
    padding: 20px 20px 20px 0;
    font-size: 14px;
}
.elementor-widget-container .zcwf_lblLeft .zcwf_col_fld {
    display: block;
    width: 100%!important;
    margin: 0!important;
    padding: 10px 0 10px 10px;
    flex-basis: 0;
    flex-grow: 1;
    flex-shrink: 1;
}
.elementor-widget-container .zcwf_lblLeft .zcwf_col_fld input[type=text], input[type=password], .zcwf_lblLeft .zcwf_col_fld textarea, .zcwf_lblLeft .zcwf_col_fld_slt {
    width: 100%!important;
    padding: 15px!important;
    border-radius: 10px!important;
    border: none!important;
    font-size: 14px!important;
    line-height: 1.5!important;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
}
.zcwf_lblLeft .zcwf_row .zcwf_col_fld textarea {
    border: none!important;
    min-height: 150px;
}
.zcwf_lblLeft .zcwf_privacy {
    margin-top: 1rem;
    width: 100%;
}
.zcwf_button {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none!important;
    font-size: 16px !important;
    font-weight: bold !important;
    width: 200px !important;
    max-width: 200px !important;
    padding: 14px 20px !important;
    margin-bottom: 20px !important;
    border-radius: 10px !important;
    border: none !important;
    background: #ddd !important;
    cursor: pointer !important;
    color: #333 !important;
}
.zcwf_col_fld .formsubmit.zcwf_button {
    margin-right: 20px !important;
    background: #f6be00 !important;
    color: #333 !important;
}
@media screen and (min-width: 768px) {
    .zcwf_lblLeft .zcwf_col_lab {
        font-size: 16px!important;
        width: 250px!important;
    }
    .zcwf_lblLeft .zcwf_col_fld input[type=text], input[type=password], .zcwf_lblLeft .zcwf_col_fld textarea, .zcwf_lblLeft .zcwf_col_fld_slt {
        font-size: 16px !important;
        padding: 20px;
    }
}
@media screen and (max-width: 767px) {
    .zcwf_lblLeft .zcwf_row {
        display: block;
    }
    .elementor-widget-container .zcwf_lblLeft .zcwf_col_lab {
        width: 100%;
        padding-bottom: 10px;
    }
    .elementor-widget-container .zcwf_lblLeft .zcwf_col_fld {
        padding: 0;
    }
}