/*ヘッダー*/
.p-global-nav .c-navbar__item a {
    font-size: 1rem;
}

/*ヘッダー問い合わせボタン*/
@media (min-width: 1024px) {
.l-header__content .c-fluid-container {
    padding-right: 0;
}
}

.p-global-nav .c-navbar__item.sm-nav-menu-item-highlight {
background: linear-gradient(to right, #32A6CF, #0155A5);
  background-position: 0% 50%;
	background-size: 200% auto;
  transition: all 0.3s ease-out;
}

.p-global-nav .c-navbar__item.sm-nav-menu-item-highlight:hover{
  background-position: 100% 51%;
}

/*ドロワーメニュー*/
.drower-logo{
  padding-top: 30px;
  padding-bottom: 15px;
  max-width: 175px;
  width: 100%;
}
span.c-hamburger-btn__label {
  display: none;
}

/*下層ヘッダー*/
.c-page-header[data-has-image=true] {
    height: clamp(180px, 30vw, 300px);
    width: 100%;
    object-fit: cover;
}

/*下層ヘッダーの位置調整*/
.c-page-header__bgimage>img, .c-page-header__bgimage>picture>img{
	object-position: 50% 100%;
}

h1.c-page-header__title {
    letter-spacing: 0.1em;
}

@media (min-width: 960px) {
  h1.c-page-header__title {
    font-size: 2.3rem;
}
}

/*フッター*/
.p-footer-sub-nav.c-sub-nav.c-sub-nav--center {
    background-color: #23355e;
    color: #FFF;
}

.c-copyright.c-copyright--inverse {
    background-color: #23355e;
}

.menu-item.c-navbar__item {
    font-size: 0.9rem;
    font-weight: 700;
}

.c-sub-nav .c-navbar {
    gap: 0 1rem;
}

.c-sub-nav .c-navbar {
    justify-content: center;
}


/*フッター上の余白削除*/
body:not(.blog):not(.single):not(.archive):not(.error404):not(.search) .l-contents__inner {
    padding-bottom: 0 !important;
}

.l-footer{
  border-top: none;
}

/*ボタンカスタマイズ*/
.btn-flat a.smb-btn {
  overflow: hidden;
  padding: 0.8rem 3rem;
  color: #fff;
  border-radius: 0;
  background: var(--accent-color);
  position: relative;
}

.btn-flat a.smb-btn span {
  position: relative;
}

.btn-flat a.smb-btn::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  transition: all .5s ease-in-out;
  transform: translateX(-96%);
  background: var(--sub-accent-color);
  z-index: 0;
}

.btn-flat a.smb-btn:hover::before {
  transform: translateX(0%);
}

.btn-flat a.smb-btn span {
  position: relative;
  z-index: 1; 
}

/*コンタクトボタン*/
.btn-contact a.smb-btn{
  display: inline-block;
  text-align: center;
  text-decoration: none;
  padding: 0.8rem 3rem;
  max-width: 100%;
  box-sizing: border-box;
  outline: none;
  color: #FFFFFF;
  background: linear-gradient(to right, #32A6CF, #0155A5);
  background-position: 0% 50%;
  background-size: 200% auto;
  transition: all 0.3s ease-out;
}
.btn-contact a.smb-btn:hover {
  color: #fff;
  background-position: 100% 51%;
}

.smb-btn:hover {
	filter: none;
}

/*リンクの装飾削除*/
a {
	text-decoration: none;
}

/*FV画像*/
@media (min-width: 1024px) {
.wp-block-snow-monkey-blocks-spider-contents-slider.alignfull.smb-spider-slider.smb-spider-contents-slider.fv-slider {
    margin-top: 12px!important;
}
}


/*FVタイトル*/
.fv-title .smb-section__title {
    font-size: 3rem;
}

@media screen and (max-width: 639px) {
		.fv-title .smb-section__title {
    font-size: 2.2rem;
}
}

/*事業内容ボタン*/
.wp-block-snow-monkey-blocks-btn.smb-btn-wrapper.btn-service a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 300px;
  max-width: 300px;
  padding: 1em;
  cursor: pointer;
  color: #1b2e59;
  background: transparent;
  border: 1px solid #1b2e59;
  border-radius: 0.3em;
  transition: background-color 0.2s, color 0.2s, width 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), border-radius 0.2s;
}
.wp-block-snow-monkey-blocks-btn.smb-btn-wrapper.btn-service a:hover {
  width: 300px;
  color: #ffffff;
  border-radius: 0.5em;
  background-color: #1b2e59;
}
.wp-block-snow-monkey-blocks-btn.smb-btn-wrapper.btn-service a:active {
  border-color: #1b2e59;
  background-color: #1b2e59;
}
.wp-block-snow-monkey-blocks-btn.smb-btn-wrapper.btn-service a:focus {
  color: #1b2e59;
  border: 1px solid #1b2e59;
}
.wp-block-snow-monkey-blocks-btn.smb-btn-wrapper.btn-service a:focus:hover {
  color: #ffffff;
}

@media screen and (max-width: 425px) {
.wp-block-snow-monkey-blocks-buttons.smb-buttons.btn-sp_center {
    justify-content: center;
}
}


/*画像角丸*/
.wp-block-snow-monkey-blocks-media-text.coloumn-img .smb-media-text__figure img {
    border-radius: 40px;
}
@media screen and (max-width: 639px) {
.wp-block-snow-monkey-blocks-media-text.coloumn-img .smb-media-text__figure img {
    border-radius: 20px;
}
}

/*セクション背景角丸*/
.wp-block-snow-monkey-blocks-section.section-round .smb-section__fixed-background {
    border-radius: 80px;
}
@media screen and (max-width: 639px) {
.wp-block-snow-monkey-blocks-section.section-round .smb-section__fixed-background {
    border-radius: 20px;
}
}

.wp-block-snow-monkey-blocks-section-with-bgimage.section-round-right {
    border-radius: 0 160px 0 0;
}

.wp-block-snow-monkey-blocks-section-with-bgimage.section-round-left {
    border-radius: 160px 0 0 0;
}

@media screen and (max-width: 639px){
  .wp-block-snow-monkey-blocks-section-with-bgimage.section-round-right {
    border-radius: 0 80px 0 0;
}
.wp-block-snow-monkey-blocks-section-with-bgimage.section-round-left {
    border-radius: 80px 0 0 0;
}
}

.wp-block-snow-monkey-blocks-panels-item-free.panel-round .smb-panels__item.smb-panels__item--free {
    border-radius: 40px;
}
@media screen and (max-width: 639px) {
.wp-block-snow-monkey-blocks-panels-item-free.panel-round .smb-panels__item.smb-panels__item--free {
    border-radius: 20px;
}
}

.banner-round .smb-items__banner {
    border-radius: 20px;
}

/*reasonタイトル装飾*/
.reason-number{
	display: flex;
	align-items: center;
}

.reason-number:before{
		content: '';
	display: inline-block;
	margin-right: 10px;
	width: 20px;
	height: 1px;
	background-color: #498ee0;
}

/*背景数字の中央調整*/
.bg-number .smb-section__background-text__text {
    transform: translate(-50%, 0%);
}

/*背景テキスト非表示*/
@media screen and (max-width: 1023px) {
	.section-bgtxt .smb-section__background-text{
		display: none;
	}
}


/*事業紹介タイトル*/
@media screen and (max-width: 639px) {
	h2.wp-block-heading.service-title_sp {
  font-size: 1.2rem!important;
	padding-top: 1rem;
}
	p.service-subtitle_sp {
  font-size: 1.2rem!important;
}
}

@media screen and (max-width: 1023px) {
.service-column img {
    max-width: 240px;
}

.service-column .c-row.c-row--reverse.c-row--lg-middle {
    justify-content: center;
    align-items: center;
}
}

/*採用タイトル*/
@media screen and (max-width: 639px) {
    p.has-text-align-center.recruit-title_sp {
    font-size: 1.3rem!important;
}
}

/* 汎用：ボタンやセクションの幅を親要素に合わせる */
.btn-service a,
.btn-contact a.smb-btn {
  max-width: 100%;
  box-sizing: border-box;
  word-break: break-word;
}

/*会社紹介ページ*/
.column-fix {
  position: sticky;
  top: 100px; 
  align-self: flex-start; 
  z-index: 10; 
}

.company-table .wp-block-snow-monkey-blocks-information-item.smb-information__item {
    border-bottom: 1px solid #E0E3E8;
    padding-bottom: 24px;
}

@media screen and (max-width: 639px) {
.company-table .c-row__col.c-row__col--1-1.c-row__col--md-1-4 {
    margin-bottom: 8px;
}
}

.slider-round .smb-spider-slider__figure-wrapper img {
    border-radius: 20px;
}

.wp-block-snow-monkey-blocks-spider-slider.company-slider {
    margin-top: -80px!important;
}

/*採用ページ先輩の声タイトル*/
.interview-title{
	position: relative;
	padding-bottom: 3px;
}
.interview-title::before{
      position: absolute;
      content: '';
			left: 0;
      bottom: 0;
      width: 100%;
      height: 2px;
      background: linear-gradient(135deg, #48CFFF 0%,#0155A5 100%);
}

/*採用情報タブ*/
@media (min-width: 640px) {
button.smb-tabs__tab {
    font-size: 1.3rem!important;
}
}

/*アコーディオン角丸*/
.smb-accordion__item__title {
    border-radius: 10px;
}

/*募集要項*/
.smb-tabs__tab {
    border: none;
}

.smb-tab-panel {
    border: none;
}

button.smb-tabs__tab {
    padding-top: 16px!important;
    padding-bottom: 16px!important;
}



/*お知らせ詳細ページ*/
.c-page-header__meta .c-meta__item.c-meta__item--author {
    display: none;
}

/*お知らせウィジェット*/
h2.c-widget__title{
	position: relative;
		display: block;
	padding-bottom: 5px
}

h2.c-widget__title::after{
	position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4px;
  background-image: repeating-linear-gradient(-45deg, #32A6CF, #32A6CF 3px, #fff 3px, #fff 6px);
}

/*投稿古い記事新しい記事非表示*/
.c-prev-next-nav {
  display: none;
}


/* プログレストラッカー */
[data-screen=input] .smf-progress-tracker__item--input .smf-progress-tracker__item__number,[data-screen=confirm] .smf-progress-tracker__item--confirm .smf-progress-tracker__item__number,[data-screen=complete] .smf-progress-tracker__item--complete .smf-progress-tracker__item__number{
	background-image: linear-gradient(-20deg, #0155A5 0%, #32a6cf 100%);
}
[data-screen=input] .smf-progress-tracker__item--input .smf-progress-tracker__item__text,[data-screen=confirm] .smf-progress-tracker__item--confirm .smf-progress-tracker__item__text,[data-screen=complete] .smf-progress-tracker__item--complete .smf-progress-tracker__item__text{
	color: #0155A5;
}
ol.smf-progress-tracker {
    margin-bottom: 3rem;
}

/*お問い合わせ送信ボタン*/
.snow-monkey-form--button-has-accent-color .smf-button-control__control{
	background: linear-gradient(to right, #32A6CF, #0155A5);
  background-position: 0% 50%;
	background-size: 200% auto;
  transition: all 0.3s ease-out;
}

button.smf-button-control__control {
    font-weight: 700;
}

/*お問い合わせフォーム*/
@media (min-width: 640px) {
    .smf-form--business .smf-item__col--label {
        flex: 0 0 15em;
        max-width: 15em;
    }
}

.smf-form--business .smf-item__col--label {
    background-color: #F7FBFC;
    color: #1B2D59;
}

.smf-form--business .smf-item__col--label {
    border-right: 1px solid #C5E2ED;
}

.smf-form--business .smf-item {
    border: 1px solid #C5E2ED;
}

/*プライバシーポリシータイトル*/
h2.wp-block-heading.privacy-title {
    padding: 0.2em 0.5em;
    background: #EBF2F5;
    border-left: solid 4px #0155A5;
}


/* hide reCAPTCHA v3 badge */
.grecaptcha-badge { 
	visibility: hidden; 
}


/* スマホ向けレスポンシブ対応 */
@media (max-width: 767px) {
  .wp-block-snow-monkey-blocks-btn.smb-btn-wrapper.btn-service a {
    width: 100%;
  }
  .btn-contact a.smb-btn {
    padding: 0.8rem 1.5rem;
  }
}
