/*
Theme Name: med_theme2026
Theme URI: https://
Author: design Xanthus
Author URI: https://d-xanthus.com/
Description: This theme is a simple blank site for WordPress developed by design Xanthus.
Version: 1.1.0
License: GNU General Public License v2 or later
License URI: LICENSE
Requires at least: 5.8
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: med_theme2026
Tags: one-column, two-columns, right-sidebar, custom-colors, custom-header, custom-menu, custom-logo, editor-style, footer-widgets, sticky-post, theme-options, translation-ready
*/

/** ----------------------------------------------------------
　defaultキャンセル
---------------------------------------------------------- **/

/* レイアウト関連 */



/** ----------------------------------------------------------
　テキストカラー関連
---------------------------------------------------------- **/

h2,
h3,
h4,
h5,
h6 { font-family: Frank Ruhl Libre, "Yu Mincho", "YuMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

/** ============================================================================
 *  基本レイアウトブロック
============================================================================ **/

/** ----------------------------------------------------------
　基本ブロックエレメント
---------------------------------------------------------- **/

/** ============================================================================
 * 基本・汎用クラス
============================================================================ **/

/** ----------------------------------------------------------
　テキスト関連
---------------------------------------------------------- **/

.text10 { font-size: 1em !important; }

.btn-tx a {
	font-family: Verdana, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-weight: 700;
	line-height: 1.2;
	border-radius: 1em;
}

/** ----------------------------------------------------------
　テーブル関連
---------------------------------------------------------- **/


/** ----------------------------------------------------------
 * リスト関連
---------------------------------------------------------- **/

/** ----------------------------------------------------------
 * その他
---------------------------------------------------------- **/

.img-wh100 img {
	max-width: none;
	width: 100% !important;
}

/** ============================================================================
 * オリジナルデザイン 基本設定
============================================================================ **/

@media screen and ( min-width: 780px ) {

	.layout-right,
	.layout-left {
		gap: 3.67%;
	}
}

/** ----------------------------------------------------------
 ヘッダー&フッター&サイドバー 基本設定
---------------------------------------------------------- **/


/** ----------------------------------------------------------
　ヘッダー設定
---------------------------------------------------------- **/

.head-contents {
	border-bottom: 5px solid var(--wp--preset--color--text-black);
}

@media screen and ( min-width: 641px ) {

	.head-contents {
		padding: 24px 0;
	}
}

/**
	ヘッダーウィジェット
----------------------------------------------------- **/

.header-widget-area { display: block;}

.header-widget-area .widget_nav_menu { display: none; }

.header-widget-area > .widget-container:not(:first-child) {
  margin-left: 0;
}

@media screen and ( min-width: 641px ) {

	.header-widget-area {
		display: grid;
		grid-template-rows: 1fr 1fr;
		gap: 0.3em 0.5em;
	}

	.header-widget-area .widget_nav_menu {
		display: block;
		grid-row: 1 / 2;
	}

	.header-widget-area .widget_nav_menu #menu-head-menu {
		font-family: Frank Ruhl Libre, "Yu Mincho", "YuMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
		display: flex;
		gap: 1em;
	}

	.head-widg-homeurl {
		font-size: 0.9em;
		text-align: right;
	}
}


/** ----------------------------------------------------------
　ナビゲーション設定
---------------------------------------------------------- **/

/* スマートフォン設定
----------------------------- */

.main-menu .menu-subtxt {
	font-size: 0.8em;
	display: inline-block;
	margin-left: 0.5em;
}

/* タブレット・PC用 カラー設定
----------------------------- */

@media screen and ( min-width: 641px ) {

	.main-nav {
		padding: 0.2rem 0 0;
	}

	ul.main-menu {
		font-size: 1.1rem;
		line-height: 1;
		justify-content: space-between;
		padding-bottom: 0.2rem;
		border-bottom: 1px solid #ccc;
	}

	.main-menu > li {
		width: 20%;
		min-height: auto;
	}

	.main-menu > li > a {
		display: block;
		padding: 0;
	}

	.main-menu .menu-subtxt {
		font-size: 0.6em;
		display: block;
		margin: 0;
	}
}


/** ----------------------------------------------------------
　フッター設定
---------------------------------------------------------- **/


/* トップへ戻るボタン
----------------------------- */


/** ============================================================================
 * Wrapper部共通
============================================================================ **/

main { padding-bottom: 32px; }

@media screen and ( min-width: 641px ) {

	main { padding-bottom: 40px; }
}

/* パンくずリスト */

.bread-crumb li.top::before { content: none;}

/** ----------------------------------------------------------
 * サイドバー
---------------------------------------------------------- **/

.sidebar .widget-container {
	max-width: 180px;
}

.sidebar .widget-container:not(:first-child) { margin-top: 24px; }

.side-headline {
	font-size: 1.1em;
	line-height: 1.2;
	margin: 0;
}

.under-border {
	padding-bottom: 0.3em;
	border-bottom: 2px solid;
}

.sidebar ul,
.sidebar ol {
	list-style: none;
	padding: 0;
	margin: 0;
}

/* サイド ナビメニュー
----------------------------- */

.sidebar .widget_nav_menu > div { padding: 0; }


.sidebar .widget_nav_menu ul.menu > li > a {
	font-size: 0.875em;
	display: block;
	padding: 0.5em 0;
	border-style: solid;
	border-width:  0 0 1px;
	border-color: var(--wp--preset--color--cyan-bluish-gray);
}

.sidebar .widget_nav_menu ul.menu > li:first-child > a {
	border-top: 1px solid var(--wp--preset--color--cyan-bluish-gray);
}

/* カテゴリーポスト サイドバー
----------------------------- */

.ms-catmenu { font-size: 1.1em; }

.ms-catmenu > li > a {
	line-height: 1.2;
	display: block;
	padding: 0.2em 0 0 0.5em;
	border-left: 16px solid;
}

.ms-catmenu > li > a:hover { opacity: 0.8; }

.ms-catmenu > li.side-cat-reports > a { border-left-color: #2c5786; }
.ms-catmenu > li.side-cat-news > a { border-left-color: #f8e69c; }
.ms-catmenu > li.side-cat-results > a { border-left-color: #8798b9; }
.ms-catmenu > li.side-cat-dividend > a { border-left-color: #09287f; }
.ms-catmenu > li.side-cat-general-meeting > a { border-left-color: #020754; }
.ms-catmenu > li.side-cat-etc > a { border-left-color: #717071; }

.ms-catmenu .side-subtxt {
	font-size: 0.6em;
	display: block;
}

/* リクルート サイドバー
----------------------------- */

.sidebar .wp-block-accordion .wp-block-accordion-item {
	padding: 0.5em 0;
	border-style: solid;
	border-width:  0 0 1px;
	border-color: var(--wp--preset--color--cyan-bluish-gray);
}

.sidebar .wp-block-accordion .wp-block-accordion-item:first-child {
	border-top: 1px solid var(--wp--preset--color--cyan-bluish-gray);
}

.sidebar .wp-block-accordion .wp-block-accordion-heading {
	font-size: 0.875em;
	font-weight: 400;
	line-height: 1.2;
}

.sidebar .wp-block-accordion button.wp-block-accordion-heading__toggle {
	font-size: inherit;
	line-height: 1.2;
}

.sidebar .wp-block-accordion .wp-block-accordion-heading + .wp-block-accordion-panel { margin-top: 0;}

.sidebar .wp-block-accordion .wp-block-accordion-heading + .wp-block-accordion-panel .widget_nav_menu ul.menu > li > a {
	border: none;
	padding: 0.3em 0 0 0.5em;
}

/*.sidebar .wp-block-accordion .wp-block-accordion-heading + .wp-block-accordion-panel .widget_nav_menu ul.menu { padding-bottom: 1em }*/

/* 会社概要 サイドバー
----------------------------- */

.about-us-menu-group > * { margin-top: 0; }

.about-us-menu-group .wp-block-accordion .wp-block-accordion-item:first-child,
.about-us-menu-group .widget_nav_menu:not(:first-child) ul.menu > li:first-child > a {
	border-top: none;
}

/* home サイドバー
----------------------------- */

/* home リクルートメニュ */

#menu-home-recruit-menu > li:not(:first-child) { margin-top: 1em; }

#menu-home-recruit-menu > li > a {
	padding: 0.5em 0.5em;
	border-width:  1px;
	position: relative;
}

#menu-home-recruit-menu > li > a:after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px;
	border-color: var(--wp--preset--color--theme-red) transparent transparent;
	position: absolute;
	right: -8px;
	bottom: -8px;
	rotate: -45deg;
}

#menu-home-recruit-menu > li > a:hover {
	color: var(--wp--preset--color--text-black);
	text-decoration: none;
	opacity: 0.6;
}

/** ----------------------------------------------------------
 * primary-wrap
---------------------------------------------------------- **/

/* パンくずリスト dx-パンくず
----------------------------- */

.bread-crumb-wrap {
	text-align: right;
	padding: 16px 0;
}

@media screen and ( min-width: 641px ) {

	.bread-crumb-wrap { padding: 8px 0; }
}


/** ----------------------------------------------------------
 * * contents部分基本
---------------------------------------------------------- **/


/*========================================================
　アーカイブ & 固定 ＆ シングル&固定共通（サイズ以外）
========================================================*/

/* ページタイトル
-------------------------------*/

.entry-title {
	font-weight: 500;
	border-bottom: 5px solid;
}

.entry-title .entry-subtit {
	font-size: 0.5em;
	font-family: Frank Ruhl Libre, "Yu Mincho", "YuMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	display: inline-block;
	margin-left: 1em;
}

@media screen and ( min-width: 780px ) {

	.entry-title {
		line-height: 0.8;
		padding-bottom:  0.3em;
	}
}

/** ============================================================================
 *  アーカイブページ
============================================================================ **/

.loop-article:not(:first-child) {
	margin: 1.5em 0;
	border-top: 1px dotted;
	padding-top: 1.5em;
}

.loop-title {
	font-weight: 600;
	margin-top: 0;
}

.post-meta,
.loop-meta {
	font-size: 0.9375em;
	font-family: Frank Ruhl Libre, "Yu Mincho", "YuMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	letter-spacing: 0.1em;
	margin: 0;
}

.date-links a { font-size: 1.1em;}

.date-links a:not(:hover) { color: var(--wp--preset--color--theme-red); }

.thum-box {
	width: 86px;
	aspect-ratio: 1 / 1;
}

/**
	Page Navi プラグイン設定
-------------------------------*/


/** ============================================================================
 * シングルページ 固定ページ
============================================================================ **/


/* シングルページ
----------------------------- */


/** ----------------------------------------------------------
　各ページ個別
---------------------------------------------------------- **/

/* リクルート
----------------------------- */

.flow-grid {
	display: grid;
	gap: 1.5em 1em;
}

.flow-grid > * {
	width: 100%;
	margin: 0 !important;
	position: relative;
}

.flow-grid > *:not(:last-child):not(.not-flow)::after,
.flow-grid > *.up-flow::before {
	content: '';
	display: block;
	width: 0.8em;
	height: 0.8em;
	border-style: solid;
	border-width: 0 2px 2px 0;
	position: absolute;
	bottom: -1em;
	left: calc(50% - 0.4em);
	rotate: 45deg;
}

.up-flow::before {
	top: -1.4em;
	bottom: auto;
}

/* 新卒フロー */

.gradu-flow { grid-template-columns: 1fr 1fr;}

.gradu-flow > * { grid-column: 1/3; }

.gradu-flow .flowgrid-left {  grid-column: 1/2;  }

.gradu-flow .flowgrid-right {  grid-column: 2/3;  }

/* サイトマップ
----------------------------- */

/* rapls sitemap プラグイン */

.rapls-sitemap > .rapls-sitemap__list {
	font-size: 0.875rem;
	column-count: 2;
}

.rapls-sitemap > .rapls-sitemap__list > li {
	page-break-inside: avoid;
	break-inside: avoid;
	padding: 0.8em 0;
	border-top: 1px dotted #ccc;
}

.rapls-sitemap__item--has-children > .rapls-sitemap__list {
	margin: 0 0 0 1em !important;
}

.rapls-sitemap a {
	display: block;
	padding: 0.3em 0;
}

.rapls-sitemap a:not(:hover) {
	color: var(--wp--preset--color--text-black);
}

/** ============================================================================
 * ホーム(トップ)ページ
============================================================================ **/

/* ホームビジュアル
----------------------------- */

/* スリックスライダー
----------------------------- */

/* arrows */

button.slick-arrow {
	background: #aaa;
	border-radius: 50%;
}

button.slick-prev:hover,
button.slick-prev:focus,
button.slick-next:hover,
button.slick-next:focus {  background: #000;  }

button.slick-arrow::after,
button.slick-arrow:hover::after {  border-color: #fff  }

/* ページャー */

.top-visual .slick-dots {
	opacity: 1;
}

.slick-dots .slick-active button,
.slick-dots li button:hover { background: var(--wp--preset--color--theme-red); }


@media screen and ( min-width: 780px ) {

	 .top-visual {
	 	max-width: calc( 100vw - 180px - 4.58vw - 10vw );
	 }
}

@media screen and ( min-width: 1056px ) {

	.top-visual {
	 	max-width: 736px;
	 }
}


/** ----------------------------------------------------------
 * ホーム共通
---------------------------------------------------------- **/

.home .primary-contents { padding-top: 30px;}

@media screen and (min-width: 641px) {
	.home .primary-contents, .home .layout-wrap:not(.alignfull) .sidebar {
		padding-top: 24px;
	}
}

/**
	home-News
----------------------------------------------------- **/

.home-news {
	margin-top: 0;
	height: 500px;
	overflow: auto;
	border-right: 1px solid #ccc;
}

.home-news-article.loop-article {
	padding: 0.5em 1em 0 0.5em;
}

.home-news-article.loop-article:not(:first-child) {
	margin: 0.5em 0;

}

.loop-homenews-title {
	font-size: 1rem;
	font-weight: 400;
	margin: 0 0 0.5em;
}

.home-news-article .loop-meta,
.home-news-article > p {
	font-size: 0.875em;
	line-height: 1.4;
}

.home-news-article > p {
	font-size: 0.85em;
	font-family: Frank Ruhl Libre, "Yu Mincho", "YuMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	margin: 0;
}

.home-news-article .btn-tx {
	font-size: 0.8em;
	margin-top: 0.3em;
}

/**
	HOME COMPANY
----------------------------------------------------- **/

.home-company > * {
	position:relative;
	margin: 0;
}

.home-company .wp-block-media-text__media > a::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}


.home-company {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}



