@charset "UTF-8";
/* ==================================================================
 * 土台（リセットとページ全体の既定）
 *
 * 🚨 **必ず parts の中で最初に読み込む。**
 * `body *{ box-sizing }` や `ul{ list-style:none }` など、
 * 他のCSSが「効いている前提」で書かれている土台がここにある。
 * 落とすと全ページが崩れる。
 * ================================================================== */

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	padding: 0;
	margin: 0;
	font-size: 100%;
	font-weight: normal;
	vertical-align: baseline;
	background: transparent;
	border: 0;
	outline: 0;
}

body {
	line-height: 1;
}

article, aside, dialog, figure, footer, header, hgroup, nav, section {
	display: block;
}

nav ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote::before, blockquote::after, q::before, q::after {
	content: "";
	content: none;
}

a {
	padding: 0;
	margin: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	border: 0;
}

ins {
	color: #000;
	text-decoration: none;
	background-color: #ff9;
}

mark {
	font-style: italic;
	font-weight: bold;
	color: #000;
	background-color: #ff9;
}

del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	cursor: help;
	border-bottom: 1px dotted #000;
}

table {
	border-spacing: 0;
	border-collapse: collapse;
}

hr {
	display: block;
	height: 1px;
	padding: 0;
	margin: 1em 0;
	border: 0;
	border-top: 1px solid #ccc;
}

input, select {
	vertical-align: middle;
}

body {
	position: relative;
	min-width: 320px;
	font-family: "メイリオ", "ヒラギノ角ゴ ProN W3", "Yu Gothic", "游ゴシック", Roboto, "Droid Sans", YuGothic, Meiryo, "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif, Helvetica;   /* ★Font Awesome は廃止済み */
	font-size: 4.26667vw;
	color: #000;
	word-wrap: break-word;
	overflow-wrap: break-word;
	background-color: #fff;
}

body * {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

body main {
	min-height: 101.33333vw;
}

a {
	color: #000;
	text-decoration: none;
}

ul {
	list-style: none;
}

table {
	border-spacing: 0;
	border-collapse: collapse;
}

/*
 * 🚨 `height: auto` を消してはいけない。
 *    `width: 100%` だけだと、HTMLの height 属性がそのまま使われて画像が縦に伸びる。
 *    幅と高さの属性を出すのはレイアウトのガタつき（CLS）を防ぐためで、
 *    その属性が悪さをしないよう `height: auto` を必ず併記する。
 */
img {
	width: 100%;
	height: auto;
	vertical-align: middle;
}

i {
	font-style: normal;
}

address {
	font-style: normal;
}

button, input, select, textarea {
	font-family: inherit;
	font-size: 100%;
}

input[type="submit"], input[type="button"] {
	-webkit-box-sizing: content-box;
	box-sizing: border-box;
	border: none;
	border-radius: 0;
	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
}

input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration {
	display: none;
}

input[type="submit"]::focus, input[type="button"]::focus {
	outline-offset: -2px;
}

/*
 * 外部リンクの印。
 *
 * アイコンは SVG を `mask` で形だけ抜き、色はリンクの文字色に従わせる。
 */
a[target="_blank"]:after {
	display: inline-block;
	/*
	 * ★大きさは送り幅 1.125em に合わせる。
	 * 小さくすると文字の折り返し位置がずれる。
	 * 余白は `padding-left: 5px`（margin ではない）。
	 */
	width: 1.125em;
	height: 1em;
	padding-left: 5px;
	box-sizing: content-box;
	vertical-align: -0.1em;
	content: "";
	background-color: currentColor;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M576 24v127.984c0 21.461-25.96 31.98-40.971 16.971l-35.707-35.709-243.523 243.523c-9.373 9.373-24.568 9.373-33.941 0l-22.627-22.627c-9.373-9.373-9.373-24.569 0-33.941L442.756 76.676l-35.703-35.705C391.982 25.9 402.656 0 424.024 0H552c13.255 0 24 10.745 24 24zM407.029 270.794l-16 16A23.999 23.999 0 0 0 384 303.765V448H64V128h264a24.003 24.003 0 0 0 16.97-7.029l16-16C376.089 89.851 365.381 64 344 64H48C21.49 64 0 85.49 0 112v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V287.764c0-21.382-25.852-32.09-40.971-16.97z'/%3E%3C/svg%3E");
	        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 576 512'%3E%3Cpath d='M576 24v127.984c0 21.461-25.96 31.98-40.971 16.971l-35.707-35.709-243.523 243.523c-9.373 9.373-24.568 9.373-33.941 0l-22.627-22.627c-9.373-9.373-9.373-24.569 0-33.941L442.756 76.676l-35.703-35.705C391.982 25.9 402.656 0 424.024 0H552c13.255 0 24 10.745 24 24zM407.029 270.794l-16 16A23.999 23.999 0 0 0 384 303.765V448H64V128h264a24.003 24.003 0 0 0 16.97-7.029l16-16C376.089 89.851 365.381 64 344 64H48C21.49 64 0 85.49 0 112v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V287.764c0-21.382-25.852-32.09-40.971-16.97z'/%3E%3C/svg%3E");
	-webkit-mask-repeat: no-repeat;
	        mask-repeat: no-repeat;
	-webkit-mask-position: center;
	        mask-position: center;
	-webkit-mask-size: contain;
	        mask-size: contain;
}

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

	body {
		min-width: 1280px;
		font-size: 16px;
	}

	body main {
		min-height: 430px;
	}

}

/* ===== ページ全体に効く指定 ===== */
/*
 * 詳細度と読み込み順に依存するため、並びを変えない。
 */

a[href^="https://js01.jposting.net/cybird/"]:after {
	display: none;
}

a[href^="https://get.adobe.com/"]:after {
	display: none;
}

a[href^="https://job.mynavi.jp/"]:after {
	display: none;
}

a[href^="https://www.facebook.com/"]:after {
	display: none;
}

a[href^="https://qiita.com/"]:after {
	display: none;
}

a[href$=".pdf"]:after {
	display: none;
}

a[href$=".jpg"]:after {
	display: none;
}

a[href$=".gif"]:after {
	display: none;
}

a[href$=".png"]:after {
	display: none;
}

p.s_conversation_em {
	margin-top: 4.26667vw;
}


/* ===== 記事本文の画像 ===== */
/*
 * 縦横比は上の `img { height: auto }` で全画像に効いている。
 * ここは本文画像に `max-width` を効かせるために残す
 * （本文には元画像より大きい width 属性が入っていることがあり、はみ出す）。
 *
 * `:where()` は詳細度0なので、個別の指定を邪魔しない。
 */
html :where(img[class*="wp-image-"]) {
	height: auto;
	max-width: 100%;
}
