@charset "UTF-8";

/* ___________________________________

  共通タグ
____________________________________ */

html {
	font-size: 14px;
}
body {
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "メイリオ",
		sans-serif;
	position: relative;
	color: #222;
}

p {
	line-height: 1.5;
	font-size: 14px;
	color: #222;
}
ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
ul li {
	font-size: 14px;
	color: #333;
}
a {
	color: #333;
	text-decoration: none;
	transition: all 0.3s;
}
a:hover {
	text-decoration: underline;
}
a:hover > img {
	opacity: 0.8;
}
img {
	display: block;
	max-width: 100%;
	height: auto;
}
strong {
	font-weight: bold;
}
p.note {
	margin-bottom: 1em;
	text-align: center;
}
p.wh {
	color: #fff;
}
h1 {
	line-height: 1.5;
	font-weight: 500;
}
h2 {
	font-weight: 500;
	line-height: 1.5;
}
h2.wh,
h3.wh,
h4.wh {
	color: #fff;
}
h3 {
	font-weight: 500;
	line-height: 1.7;
}
h4 {
	font-weight: 500;
	line-height: 1.7;
}
h5 {
	font-weight: 500;
	line-height: 1.7;
}
img {
	display: block;
	max-width: 100%;
}
a > img:hover {
	opacity: 0.8;
}
dl dt {
	font-weight: bold;
}
dl dt,
dl dd {
	font-size: 14px;
	line-height: 1.7;
}
ul li,
ol li {
	font-size: 14px;
	line-height: 1.7;
}
table th,
table td {
	font-size: 14px;
	line-height: 1.7;
}
strong {
	font-weight: bold;
}

/* フォントカラー
--------------------------- */
.red {
	color: #ff0000;
}

/* スマホ, タブレット
--------------------------- */
.sp_only {
	display: none;
}
.tb_only {
	display: none;
}
.sp_tb_only {
	display: none;
}
.u1200_only {
	display: none;
}

@media screen and (max-width: 768px) {
	._pc {
		display: none;
	}
}

._sp {
	display: none;
}

@media screen and (max-width: 768px) {
	._sp {
		display: block;
	}
}

/* ------------------------------
   フレックスボックス
------------------------------ */

/* flexbox:row(.fb_row)
--------------------------- */
.fb_row {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	width: 100%;
	margin: 0 auto;
}

/* flexbox:row(.fb_column)
--------------------------- */
.fb_column {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	width: 100%;
	margin: 0 auto;
}

/* flexbox 画像
--------------------------- */
.fb_row li.photo img,
.fb_row li.image img {
	width: 100%;
	height: auto;
}
.fb_column li.photo img,
.fb_column li.image img {
	width: 100%;
	height: auto;
}

/* ------------------------------
   Font
------------------------------ */
.montserrat {
	font-family: "Montserrat", sans-serif;
}
.m-plus {
	font-family: "M PLUS 1p", sans-serif;
}
.plus-jakarta {
	font-family: "Plus Jakarta Sans", sans-serif;
}

/* ------------------------------
   Web Font
------------------------------ */
/* icofont
--------------------------- */

/* 共通 */
.icofont::before,
.icofont::after {
	font-family: IcoFont !important;
	font-style: normal;
	font-weight: 400;
	font-variant: normal;
	text-transform: none;
	white-space: nowrap;
	word-wrap: normal;
	direction: ltr;
	line-height: 1;
}

/* アイコン：右
--------------------------- */
/* 右 */
.icofont.right::after {
	content: "\ea69";
	margin-left: 0.25em;
}
/* 右 */
.icofont.simple-right::after {
	content: "\eab8";
	margin-left: 0.25em;
}
/* 右 */
.icofont.double-right::after {
	content: "\ea7c";
	margin-left: 0.25em;
}
/* 右 */
.icofont.caret-right::after {
	content: "\ea69";
	margin-left: 0.25em;
}
/* 外部 */
.icofont.external-link::after {
	content: "\ef1f";
	margin-left: 0.25em;
}
/* ダウンロード */
.icofont.download::after {
	content: "\ef08";
	margin-left: 0.25em;
}
/* コンピュータ */
.icofont.computer::after {
	content: "\eeee";
	margin-left: 0.25em;
}
/* 携帯電話 */
.icofont.mobile-phone::after {
	content: "\ec8a";
	margin-left: 0.25em;
}
/* 下 */
.icofont.caret-down::after {
	content: "\ea67";
	margin-left: 0.25em;
}

/* アイコン：左
--------------------------- */
/* 左 */
.icofont.left::before {
	content: "\ea68";
	margin-right: 0.25em;
}
/* 左 */
.icofont.simple-left::before {
	content: "\eab5";
	margin-right: 0.25em;
}
/* チェック */
.icofont.tick-mark::before {
	content: "\f00e";
	margin-right: 0.25em;
}
.icofont.checked::before {
	content: "\eed9";
	margin-right: 0.25em;
}
/* マイナス */
.icofont.minus::before {
	content: "\ef9a";
	margin-right: 0.25em;
}
/* 時計 */
.icofont.clock-time::before {
	content: "\eedc";
	margin-right: 0.25em;
}
/* YouTube */
.icofont.youtube::before {
	content: "\ecbb";
	margin-right: 0.25em;
}
/* ログイン */
.icofont.login::before {
	content: "\ef7b";
	margin-right: 0.25em;
}
/* ログアウト */
.icofont.logout::before {
	content: "\ef7c";
	margin-right: 0.25em;
}

/* ___________________________________

  フッタ
____________________________________ */

footer {
	padding: 0;
	position: relative;
	z-index: 20;
	background-image: linear-gradient(
		to right,
		rgba(42, 153, 251, 0.7) 5%,
		rgba(248, 162, 160, 0.7),
		rgba(255, 141, 141, 0.7),
		rgba(255, 183, 141, 0.7) 90%,
		rgba(255, 234, 180, 0.7) 100%
	);
	background-size: cover;
	background-position: center top;
}
footer .container {
	width: 100%;
	margin: 0 auto;
}

/* ------------------------------
   背景
------------------------------ */
.footer-inner {
	width: 1200px;
	margin: 0 auto;
}

/* ------------------------------
   フッタメニュー
------------------------------ */
footer .footer-nav {
	width: 90%;
	margin: 0 auto;
	padding: 0 5%;
}
footer .footer-nav ul.outer {
	width: 70%;
	margin: 0 auto;
	padding: 2% 0;
}

/* MENU
--------------------------- */
footer .footer-nav ul.outer li.menu h3 {
	color: #fff;
	font-size: 14px;
	font-weight: bold;
}
footer .footer-nav ul.outer li.menu {
	flex: 0 0 49%;
	margin-right: 2%;
}
footer .footer-nav ul.outer li.menu ul.inner li {
	flex: 0 0 auto;
	width: 100%;
}
footer .footer-nav ul.outer li.menu ul.inner li a {
	color: #fff;
	font-size: 13px;
	font-weight: normal;
}

/* SNS
--------------------------- */
footer .footer-nav ul.outer li.sns {
	flex: 0 0 49%;
}
footer .footer-nav ul.outer li.sns ul.inner {
	align-items: center;
}
footer .footer-nav ul.outer li.sns ul.inner li {
	flex: 0 0 10%;
	margin-right: 1%;
	text-align: center;
}
footer .footer-nav ul.outer li.sns ul.inner li:last-child {
	flex: 0 0 10%;
	margin-right: 0;
}

/* FOLLOW US */
footer .footer-nav ul.outer li.sns ul.inner li.follow {
	flex: 0 0 16.6666%;
	color: #fff;
	font-size: 13px;
	white-space: nowrap;
}
footer .footer-nav ul.outer li.sns ul.inner li a {
	color: #fff;
	font-size: 20px;
}
footer .footer-nav ul.outer li.sns ul.inner li a:hover {
	text-decoration: none;
	box-shadow: 0 7px 10px rgba(39, 154, 241, 0.4);
	border-color: transparent;
	background: #279af1;
	background: transparent;
}
footer .footer-nav ul.outer li.sns ul.inner li::before a {
	content: "";
	height: 20px;
	display: inline-block;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
	opacity: 0;
	transform-style: preserve-3d;
	transition: all 0.3s ease-out;
}
footer .footer-nav ul.outer li.sns ul.inner li a:hover::before {
	bottom: 0;
	opacity: 0.8;
	opacity: 1;
	filter: blur(15px);
}

/* フッタメニュー
--------------------------- */
footer .footer-nav2 ul.outer {
	width: 70%;
	margin: 0 auto;
	padding: 2% 0;
	border-top: 1px solid rgba(255, 255, 255, 0.5);
}

/* コピーライト
--------------------------- */
footer .copyright {
	font-size: 11px;
	text-align: center;
	padding: 0.5em 0;
	/*background: #1C1D21;*/
}
footer .copyright p {
	color: #fff;
	font-size: 12px;
}

/* ___________________________________

  ヘッダ
____________________________________ */

/* 共通
--------------------------- */
#wp_nav button#MenuBtn {
	display: none;
}

/* トップのみ
--------------------------- */
.header {
	background-image: linear-gradient(
		to right,
		rgba(42, 153, 251, 0.7) 5%,
		rgba(248, 162, 160, 0.7),
		rgba(255, 141, 141, 0.7),
		rgba(255, 183, 141, 0.7) 90%,
		rgba(255, 234, 180, 0.7) 100%
	);
	width: 100%;
	z-index: 200;
	position: fixed;
}

/* 下層
--------------------------- */
.header-under {
	background: rgba(228, 29, 33, 1);
	width: 100%;
	z-index: 200;
	position: fixed;
}
.header_inner {
	width: 1200px;
	margin: 0 auto;
}

/* ------------------------------
   レイアウト
------------------------------ */
.header ul.outer {
	justify-content: center;
	align-items: center;
}
.header ul.outer li.logo {
	flex: 0 0 17%;
	height: auto;
	margin: 0 3% 0 0;
}
.header ul.outer li.wrapper-nav {
	flex: 0 0 80%;
	margin: 0;
}
.header ul.outer li.wrapper-nav ul.inner {
	width: 100%;
}

/* ------------------------------
   ロゴ
------------------------------ */
h1.site-logo {
	height: 40px;
	padding: 10px 0;
	justify-content: center;
}
h1.site-logo img {
	width: 90%;
}

/* ロゴ変更前 */
.site-logo #logo-svg {
	width: 100%;
	height: auto;
}
.site-logo #logo-svg .st0 {
	fill: #020887;
}
.site-logo #logo-svg .st1 {
	fill: #fff;
}
.site-logo #logo-svg .st2 {
	opacity: 0.5;
	fill: #020887;
}
.site-logo #logo-svg .st3 {
	opacity: 0.25;
	fill: #020887;
}
.site-logo #logo-svg .st4 {
	opacity: 0.25;
	fill: none;
}
.site-logo #logo-svg .st5 {
	opacity: 0.25;
	fill: #e60012;
}

/* ロゴ変更後 */
header.bg-white .nav-menu a {
	color: #222;
}

/* ------------------------------
   ナビゲーション01（左）
------------------------------ */
.nav-menu01 {
	flex: 0 0 65%;
	margin-right: 4%;
}
.nav-menu01 ul.nav-menu01 {
	width: 100%;
	justify-content: flex-end;
}
.nav-menu01 ul.nav-menu01 li {
	margin-right: 2%;
	line-height: 2;
}
.nav-menu01 a {
	padding: 0 1em;
	color: #003a8b;
	font-size: 14px;
	font-weight: 500;
	position: relative;
	display: inline-block;
	text-decoration: none;
	border-radius: 20px;
	background: #fff;
}
.nav-menu01 a:hover {
	color: #fff;
	box-shadow: 0 7px 10px rgba(0, 58, 139, 0.4);
	border-color: transparent;
	transition: 0.3s;
	background: #2a99fb;
}
.nav-menu01::before a {
	content: "";
	height: 40px;
	display: inline-block;
	position: absolute;
	left: 30px;
	right: 30px;
	bottom: 5px;
	z-index: -1;
	border-radius: 50px;
	opacity: 0;
	transform-style: preserve-3d;
	transition: all 0.3s ease-out;
}
.nav-menu01 a:hover::before {
	bottom: -10px;
	opacity: 0.8;
	filter: blur(15px);
}

/* すべての講座
--------------------------- */
.post-type-archive-content .nav-menu01 li#all a {
	color: #fff;
	box-shadow: 0 7px 10px rgba(0, 58, 139, 0.4);
	border-color: transparent;
	transition: 0.3s;
	background: #2a99fb;
}

/* 長編講座
--------------------------- */
.term-long-version .nav-menu01 li#long-version a {
	color: #fff;
	box-shadow: 0 7px 10px rgba(0, 58, 139, 0.4);
	border-color: transparent;
	transition: 0.3s;
	background: #2a99fb;
}

/* 短編講座
--------------------------- */
.term-short-version .nav-menu01 li#short-version a {
	color: #fff;
	box-shadow: 0 7px 10px rgba(0, 58, 139, 0.4);
	border-color: transparent;
	transition: 0.3s;
	background: #2a99fb;
}

/* 卒業課題
--------------------------- */
.page-template-page-graduation-works .nav-menu01 li#graduation-works a {
	color: #fff;
	box-shadow: 0 7px 10px rgba(0, 58, 139, 0.4);
	border-color: transparent;
	transition: 0.3s;
	background: #2a99fb;
}

/* 詳細項目
--------------------------- */
.page-template-page-sitemap .nav-menu01 li#sitemap a {
	color: #fff;
	box-shadow: 0 7px 10px rgba(0, 58, 139, 0.4);
	border-color: transparent;
	transition: 0.3s;
	/*background: linear-gradient(to right,rgba(92,129,180,0.9),rgba(255,141,141,0.9));*/
	background: #2a99fb;
}

/* ------------------------------
   ナビゲーション02（右）
------------------------------ */
.nav-menu02 {
	flex: 0 0 30%;
}
.nav-menu02 ul.nav-menu02 {
	justify-content: flex-end;
}
.nav-menu02 ul.nav-menu02 li {
	flex: 0 0 auto;
	max-width: 100%;
	margin-bottom: 1%;
}
.nav-menu02 a {
	padding: 0 1em;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	line-height: inherit;
	position: relative;
	display: inline-block;
	text-decoration: none;
	letter-spacing: inherit;
}
.nav-menu02 a:hover {
	/*
    text-shadow: 1px 1px 8px rgba(42,153,251,0.9);
	filter: drop-shadow(0 0 1px #2a99fb);*/
	color: rgba(255, 255, 255, 0.5);
}

/* HOME
--------------------------- */
.home .nav-menu02 li#home a {
	/*
    text-shadow: 1px 1px 8px rgba(4,136,253,1);
	filter: drop-shadow(0 0 1px #0488fd);
	*/
}

/* ログイン中
--------------------------- */
.logged-in .nav-menu02 li#login {
	display: none;
}

/* ログインページ
--------------------------- */
.page-template-page-login .nav-menu02 li#logout {
	display: none;
}
.page-template-page-login .nav-menu02 li#login {
	display: inline-block;
}

/* 卒業課題
--------------------------- */
.page-template-page-graduation-works .nav-menu02 li#logout {
	display: none;
}
.page-template-page-graduation-works .nav-menu02 li#login {
	display: none;
}

/* ------------------------------
   SP ナビゲーション
------------------------------ */
#wp_nav_h.sp_only {
	display: none !important;
}
#wp_nav_h button#MenuBtn_h {
	display: block;
}
#wp_nav_h {
	display: block;
	position: relative;
	top: 0;
	right: 0;
	z-index: 300;
}
#nav_h {
	display: block;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 150;
	width: 200px;
	margin-right: -200px;
	background: linear-gradient(
		to bottom right,
		rgba(92, 129, 180, 0.9),
		rgba(255, 141, 141, 0.9)
	);
	background: linear-gradient(
		to bottom right,
		rgba(42, 153, 251, 0.9),
		rgba(248, 162, 160, 0.9) 90%,
		rgba(255, 183, 141, 0.9) 100%
	);
	margin-top: 0;
}
#nav_h ul {
	flex-direction: column;
}
#nav_h ul li {
	list-style-type: none;
	float: none;
	width: 100%;
}
#nav_h ul li a {
	text-decoration: none;
	display: block;
	margin: 0;
	padding: 12px 10px;
	color: #fff;
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}
#nav_h ul li a:hover {
	color: #fff;
	background: #2a99fb;
}

/* ログイン中
--------------------------- */
.logged-in #nav_h ul li#login {
	display: none;
}

.drawer-hamburger {
	display: none !important;
}
#wp_nav_h button#MenuBtn_h {
	top: 0%;
	right: 2%;
	width: 6%;
	height: 60px;
}
button img {
	width: 100%;
}
button:focus {
	outline: none;
}
#bg {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.8);
	z-index: 290;
}
.navbar_toggle_icon:nth-child(2) {
	margin: 7px 0;
}
.navbar_toggle_icon {
	position: relative;
	display: block;
	height: 1px;
	width: 30px;
	background: #fff;
	-webkit-transition: ease 0.5s;
	transition: ease 0.5s;
}
.navbar_toggle.open .navbar_toggle_icon:nth-child(1) {
	top: 1px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.menu_btn {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	position: relative;
	height: 103px;
	height: 54px;
	padding: 0 1em;
	background: #132861;
	margin-left: auto;
	cursor: pointer;
}

/* ___________________________________

  コンテンツ共通
____________________________________ */

/* ------------------------------
   #wrapper
------------------------------ */
#wrapper {
	padding-bottom: 5%;
	background: #f5f5f5;
}

/* ------------------------------
   main
------------------------------ */
main {
	width: 100%;
	margin: 0 auto;
}

/* ------------------------------
   .main_content
------------------------------ */
.main_content,
.introduction {
	width: 1200px;
	margin: 0 auto;
	background: #f5f5f5;
}

/* ------------------------------
   見出し
------------------------------ */
.main_content h1.type1 {
	margin: 0 0 1em;
	padding: 1em 0 0;
	color: #1c1d21;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.2;
}
.main_content h2.type1 {
	padding: 0 0 1em;
	color: #1c1d21;
	font-size: 26px;
	font-weight: bold;
	line-height: 1.2;
}

/* グラデ */
.grd1 {
	background: -webkit-linear-gradient(0deg, #2a99fb, #f8a2a0);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.main_content h3 {
	padding: 0 0 1em;
	color: #1c1d21;
	font-size: 24px;
	line-height: 1.2;
}

/* -------------------------
   ページのトップへ戻る
------------------------- */
#fixedTop {
	right: 10px;
	bottom: 10px;
	color: #fff;
	text-align: center;
	line-height: 50px;
	text-decoration: none;
	vertical-align: middle;
	display: none;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: #2a99fb;
	position: fixed;
	z-index: 99;
}
#fixedTop:hover {
	background: #0488fd;
}

/* ___________________________________

  フッタリンク
____________________________________ */

#footer-link {
	padding: 3% 0;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
#footer-link ul.outer {
	width: 1200px;
	margin: 0 auto;
	justify-content: flex-start;
	align-items: flex-start;
}
#footer-link ul#regular {
	margin-bottom: 5%;
}
#footer-link ul.outer li.content_wrapper {
	flex: 0 0 23%;
	margin: 0 2% 2% 0;
}
#footer-link ul.outer li.content_wrapper:nth-child(4n) {
	margin-right: 0;
}
#footer-link ul.outer li.content_wrapper dl dt,
#footer-link ul.outer li.content_wrapper dl dd ul.inner li {
	font-size: 12px;
}
#footer-link ul.outer li.content_wrapper p#to-home {
	margin-bottom: 1em;
	padding: 0;
	font-size: 14px;
	font-weight: bold;
	text-align: left;
}
#footer-link ul.outer li.content_wrapper h2 {
	margin-bottom: 1em;
	padding: 0;
	font-size: 14px;
	text-align: left;
}
#footer-link ul.outer li.content_wrapper h3 {
	margin: 1em 0 0.5em;
	padding: 0 0 0 0.5em;
	font-size: 13px;
	text-align: left;
}
#footer-link ul.outer li.content_wrapper h4 {
	margin: 1em 0 0;
	padding: 0 0 0 1em;
	font-size: 12px;
	text-align: left;
}

/* 項目
--------------------------- */
#footer-link ul.inner li {
	flex: 0 0 auto;
	padding-left: 1.5em;
	font-size: 12px;
}
#footer-link ul.inner li a {
	color: #666;
}

/* 長編講座
--------------------------- */
#footer-link ul#long-version {
	border-bottom: 1px dotted #ccc;
}

/* 短編講座
--------------------------- */
#footer-link ul#short-version {
	padding-top: 2%;
}

/* ========================================

  下層ページ　共通タグ

======================================== */

/* パンくず
--------------------------- */
.breadcrumbs {
	width: 1200px;
	margin: 0 auto;
	padding: 0 0 1%;
	color: #888;
	line-height: 1.3;
	font-size: 14px;
	clear: both;
	background: #f5f5f5;
	border-bottom: 3px solid #fff;
	position: relative;
}
.breadcrumbs::after {
	width: 2vw;
	content: " ";
	display: block;
	border-bottom: solid 3px #707f89;
	position: absolute;
	bottom: -3px;
}
.breadcrumbs a {
	color: #888;
}
.breadcrumbs a:hover {
	color: #2a99fb;
}

/* パンくず（404ページ）
--------------------------- */
.error404 .breadcrumbs {
	padding: 1% 0 1%;
	border-bottom: none;
}
.error404 .breadcrumbs::after {
	border-bottom: none;
}

/* ___________________________________

  コンテンツ
____________________________________ */

/* タイトル
--------------------------- */
.ttlarea {
	width: 100%;
	height: 150px;
	position: relative;
	padding-top: 60.1px;
}

.ttlarea::before {
	content: "";
	position: absolute;
	top: 0%;
	left: 0%;
	width: 100%;
	height: 100%;
	background: linear-gradient(
		90deg,
		rgba(42, 153, 251, 0.7) 1.6%,
		rgba(255, 141, 141, 0.7) 48.53%,
		rgba(255, 234, 180, 0.7) 97.47%
	);
	opacity: 0.5;
}

/* テキストの幅 */
.ttlarea ul.outer li {
	flex: 0 0 auto;
	width: 100%;
	max-width: 100%;
}
.single-movie .ttlarea ul.outer li {
	flex: 0 0 auto;
	width: 70%;
	max-width: 70%;
}

/* 背景画像 */
.tag .ttlarea,
.category .ttlarea,
.archive .ttlarea,
.page-template-page-login .ttlarea,
.error404 .ttlarea {
	background: linear-gradient(
			to top,
			rgba(92, 129, 180, 0.5) 0%,
			rgba(255, 141, 141, 0.5) 100%
		),
		url(../../content/img/header-bg1.jpg);
	background-repeat: no-repeat !important;
	background-position: center center !important;
	background-size: cover;
}
.single-content .ttlarea,
.tax-content_category .ttlarea,
.tax-content_tag .ttlarea,
.post-type-archive-content .ttlarea {
	background: linear-gradient(
			to top,
			rgba(92, 129, 180, 0.5) 0%,
			rgba(255, 141, 141, 0.5) 100%
		),
		url(../../content/img/header-bg1.jpg);
	background-repeat: no-repeat !important;
	background-position: center center !important;
	background-size: cover;
}
.page-template-page-graduation-works .ttlarea {
	background: linear-gradient(
			to top,
			rgba(92, 129, 180, 0.5) 0%,
			rgba(255, 141, 141, 0.5) 100%
		),
		url(../../content/img/header-bg1.jpg);
	background-repeat: no-repeat !important;
	background-position: center center !important;
	background-size: cover;
}
.page-template-page-sitemap .ttlarea {
	background: linear-gradient(
			to top,
			rgba(92, 129, 180, 0.5) 0%,
			rgba(255, 141, 141, 0.5) 100%
		),
		url(../../content/img/header-bg1.jpg);
	background-repeat: no-repeat !important;
	background-position: center center !important;
	background-size: cover;
}
.term-basic-lesson .ttlarea {
	background: linear-gradient(
			to top,
			rgba(92, 129, 180, 0.5) 0%,
			rgba(255, 141, 141, 0.5) 100%
		),
		url(../../content/img/basic_lesson_fv.png);
	background-size: cover;
}
.term-advanced-lesson .ttlarea {
	background: linear-gradient(
			to top,
			rgba(92, 129, 180, 0.5) 0%,
			rgba(255, 141, 141, 0.5) 100%
		),
		url(../../content/img/advanced_lesson_fv.png);
	background-size: cover;
}
.term-business .ttlarea {
	background: linear-gradient(
			to top,
			rgba(92, 129, 180, 0.5) 0%,
			rgba(255, 141, 141, 0.5) 100%
		),
		url(../../content/img/business_fv.png);
	background-size: cover;
}
.post-type-archive-creater-blog .ttlarea {
	background: linear-gradient(
			to top,
			rgba(92, 129, 180, 0.5) 0%,
			rgba(255, 141, 141, 0.5) 100%
		),
		url(../../content/img/business_fv.png);
	background-size: cover;
}

/* デモページ
--------------------------- */
.page-template-page-demonstration .ttlarea {
	background: linear-gradient(
			to top,
			rgba(92, 129, 180, 0.5) 0%,
			rgba(255, 141, 141, 0.5) 100%
		),
		url(../../content/img/header-bg1.jpg);
	background-repeat: no-repeat !important;
	background-position: center center !important;
	background-size: cover;
}
.page-template-page-demonstration_ae .ttlarea {
	background: linear-gradient(
			to top,
			rgba(92, 129, 180, 0.5) 0%,
			rgba(255, 141, 141, 0.5) 100%
		),
		url(../../content/img/header-bg1.jpg);
	background-repeat: no-repeat !important;
	background-position: center center !important;
	background-size: cover;
}
.page-template-page-graduation-works_de .ttlarea {
	background: linear-gradient(
			to top,
			rgba(92, 129, 180, 0.5) 0%,
			rgba(255, 141, 141, 0.5) 100%
		),
		url(../../content/img/header-bg1.jpg);
	background-repeat: no-repeat !important;
	background-position: center center !important;
	background-size: cover;
}

.ttlarea h1 {
	width: 1200px;
	margin: 0 auto;
	padding: 0;
	color: #fff;
	font-size: 30px;
	filter: drop-shadow(1px 1px 1px #000);
}
.ttlarea ul.outer {
	height: 150px;
	align-items: center;
}

/* ___________________________________

  アーカイブ
____________________________________ */

.container_subpage {
	width: 1200px;
	margin: 0 auto;
	padding-bottom: 5%;
	background: #f5f5f5;
}

/* 見出し
--------------------------- */
.container_subpage h1.type1 {
	margin: 0;
	padding: 1em 0;
	color: #1c1d21;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.2;
}

/* レイアウト
--------------------------- */
#post-list li.archive-li {
	flex: 0 0 18.4%;
	margin: 0 2% 2% 0;
}
#post-list li.archive-li:nth-child(5n) {
	margin-right: 0;
}
#post-list li.archive-li ul.inner li.txt {
	padding: 2% 0;
	font-size: 13px;
}
/*
#post-list li.archive-li ul.inner li.txt h2 {
	margin: 0 0 0.5em;
	font-size: 13px;
}
#post-list li.archive-li ul.inner li.txt p {
	font-size: 12px;
}
*/

/* ページネーション
--------------------------- */
.pagination {
	width: 1200px;
	margin: 5% 0;
}
.pagination:after,
.pagination ul:after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	visibility: hidden;
}
.pagination ul {
	margin: 0;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
}
.pagination li {
	float: left;
	list-style: none outside none;
	margin-left: 3px;
}

.pagination li.active {
	width: 46px;
	height: 46px;
	color: #fff;
	text-align: center;
	line-height: 46px;
	cursor: not-allowed;
	border-radius: 50%;
	background: #2a99fb;
	display: inline-block;
}

/* 次のページ */
.pagination li a.next-page {
	width: 46px;
	height: 46px;
	color: #fff;
	text-align: center;
	line-height: 46px;
	cursor: not-allowed;
	border-radius: 50%;
	background: #aaa;
	display: inline-block;
}
.pagination li a.next-page:hover {
	color: #fff;
	opacity: 0.8;
	transition-duration: 500ms;
	transition-property: all;
	transition-timing-function: ease;
	background: #0488fd;
}

/* Prev */
.pagination li.prev {
	margin-left: 0;
	padding-right: 0.5em;
}
.pagination li.prev a:hover {
	color: #aaa;
	text-decoration: none;
}

/* Next */
.pagination li.next {
	padding-left: 0.5em;
}
.pagination li.next a:hover {
	color: #aaa;
	text-decoration: none;
}

/* ___________________________________

  記事
____________________________________ */

/* ------------------------------
   記事　共通セレクタ
------------------------------ */

/* ボタン
--------------------------- */
div.btn {
	margin: 5% auto;
	display: flex;
	align-items: center;
}
div.btn a {
	color: #222;
	font-size: 18px;
	text-shadow: none;
	line-height: 1.5;
	padding: 0.5em 2em;
	background-color: #fff;
	border: 1px solid #222;
	display: flex;
	justify-content: center;
	align-items: center;
}
div.btn a:hover {
	color: #fff;
	background-color: #000;
	text-decoration: none;
}
div.btn a.fa-caret-right::after {
	font-family: "Font Awesome 5 Free";
	content: "\f0da";
	font-size: 1em;
	margin: 0 0 0 0.5em;
	font-weight: 900;
	text-decoration: none;
	vertical-align: middle;
}
div.btn a.fa-caret-right::before {
	content: "";
}

/* ページネーション
--------------------------- */
.single .main .pagination2 {
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding-top: 1em;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	border-top: 1px dotted #ccc;
}
.single ul#post-list li.main .pagination2 li {
	flex: 0 0 auto;
	max-width: 100%;
	margin-right: 0.5em;
}
.single ul#post-list li.main .pagination2 li.previous {
	margin-right: 0.5em;
}
.single ul#post-list li.main .pagination2 li.next {
	margin-left: 0.5em;
}

/* ページネーション
--------------------------- */
.single .container_subpage .main .pagination2 {
	width: 100%;
	height: auto;
	margin: 2em auto 0;
	padding-top: 1em;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	border-top: 1px dotted #ccc;
}
.single .container_subpage ul#post-list li.main .pagination2 li {
	flex: 0 0 auto;
	max-width: 100%;
	margin-right: 0.5em;
}
.single .container_subpage ul#post-list li.main .pagination2 li.previous {
	margin-right: 0.5em;
}
.single .container_subpage ul#post-list li.main .pagination2 li.next {
	margin-left: 0.5em;
}

/* キャプション
--------------------------- */
p.caption_item {
	color: #fff;
	font-size: 14px;
	line-height: 1.2;
	text-shadow: #000 1px 1px 2px, #000 -1px 1px 2px, #000 1px -1px 2px,
		#000 -1px -1px 2px;
	filter: drop-shadow(0 0 0.75rem #000);
	position: absolute;
	bottom: 15px;
	right: 15px;
}
p.caption_concept {
	color: #fff;
	font-size: 30px;
	font-family: "Times New Roman", serif;
	font-style: italic;
	line-height: 1.2;
	text-shadow: #000 1px 1px 2px, #000 -1px 1px 2px, #000 1px -1px 2px,
		#000 -1px -1px 2px;
	filter: drop-shadow(0 0 0.75rem #000);
	position: absolute;
	bottom: 15px;
	right: 35px;
}

/* 詳細
--------------------------- */
.single ul#post-list {
	align-items: flex-start;
}
.single .container_subpage ul#post-list li.main {
	flex: 0 0 71%;
	margin-right: 2.5%;
	padding: 2%;
	background: #fff;
}
.single .container_subpage ul#post-list li.sub {
	flex: 0 0 18.5%;
	margin-right: 0;
	padding: 2%;
	background: #fff;
}

/* 見出し
--------------------------- */
.single .container_subpage ul#post-list li.main h1 {
	font-size: 24px;
	text-align: left;
	margin-bottom: 0.5em;
	padding: 0 0 0.5em;
	border-bottom: 1px solid #000;
}
.single .container_subpage ul#post-list li.main h2 {
	font-size: 20px;
	text-align: left;
	padding: 1em 0;
}
.single .container_subpage ul#post-list li.main h3 {
	font-size: 16px;
	text-align: left;
	margin: 3em 0 2em;
	padding: 0.5em 0;
	border-top: 2px solid #ccc;
	border-bottom: 2px solid #ccc;
}
.single .container_subpage ul#post-list li.main h4 {
	font-size: 16px;
	font-weight: bold;
	text-align: left;
	margin: 0 0 1em;
}
.single .container_subpage ul#post-list li.sub h3 {
	color: #222;
	font-size: 18px;
	text-align: left;
	margin: 0 0 1em;
	padding: 0 0 0.5em;
	border-bottom: 1px solid #000;
}

/* メインの詳細
--------------------------- */
.single .box_details {
	display: flex;
	flex-direction: row;
}
.single p.summary {
	margin: 1em 0 3em;
}
.single .box_details dl {
	width: 45%;
}
.single .box_details dl.no_image {
	width: 100%;
}
.single-activities .box_details dl,
.single-food-content .box_details dl,
.single-area-information .box_details dl {
	width: 100%;
}
.single-activities .box_details dl.half,
.single-food-content .box_details dl.half,
.single-area-information .box_details dl.half {
	width: 45%;
}
.single dl.no_image + .photo {
	width: 0;
	margin: 0;
}
.single-area-information .box_details dl.all {
	width: 100%;
}
.single .box_details dl dt,
.single dl.detail dt {
	font-weight: bold;
	margin-bottom: 1em;
	padding: 0.5em;
	border-bottom: 1px dotted #ccc;
}
.single .box_details dl dd,
.single dl.detail dd {
	margin-bottom: 1em;
	padding-left: 1em;
	text-indent: -1em;
}
.single dl.detail dd.map::before {
	content: "";
}
.single .box_details dl dd ul li::before,
.single dl.detail dd ul li::before {
	content: "・";
}
.single .box_details dl dd ul li.no_disc::before,
.single dl.detail dd ul li.no_disc::before {
	content: "";
}
.single .box_details dl dd::before,
.single dl.detail dd::before {
	content: "・";
}
.single .box_details div.wrapper_txt {
	width: 50%;
}
.single .box_details .photo,
.single .photo.half {
	width: 50%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin: 0 0 2em 5%;
}
.single .box_details .photo span.caption,
.single .box_details .photo span.caption_last {
	display: block;
	font-size: 13px;
	text-align: left;
	line-height: 1.5;
	margin: 0.5em 0 1em;
}
.single .box_details .photo span.caption_last {
	margin: 1em 0 0;
}

/* サブ
--------------------------- */
.single .container_subpage ul#post-list li.sub ul.inner {
	align-items: stretch;
	margin-bottom: 15%;
}
.single .container_subpage ul#post-list li.sub ul.inner li {
	padding: 2.5% 0;
	border-bottom: dotted 1px #ccc;
}
.single .container_subpage ul#post-list li.sub ul.inner li ul.sub_inner li.txt {
	flex: 0 0 auto;
	max-width: 100%;
	border: none;
}

/* ___________________________________

  エラー404
____________________________________ */

.error404 #post-list li.archive-li {
	flex: 0 0 100%;
	margin: 0 2% 2% 0;
}
.error404 #post-list li.archive-li p {
	margin: 0 0 1em;
}
.error404 #post-list li.archive-li p.url {
	padding: 1em 0;
	border-top: dotted 1px #ccc;
	border-bottom: dotted 1px #ccc;
}

/* ___________________________________

  ログイン画面
____________________________________ */

.page-template-page-login ul#wrapper_login-form {
	width: 60%;
	margin: 0 auto;
	justify-content: center;
	align-items: center;
}
.page-template-page-login ul#wrapper_login-form li {
	flex: 0 0 auto;
	max-width: 100%;
	width: 50%;
}

/* フォーム
--------------------------- */
.tml-field {
	max-width: 400px;
	background-color: #fff;
	color: #000;
	letter-spacing: 1px;
}

input {
	margin-bottom: 10px;
}
input {
	font-size: 1em;
	padding: 10px;
	font-family: "Source Sans Pro", arial, sans-serif;
	border: 1px solid #cecece;
	background: #d7d7d7;
	color: #fafafa;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-moz-background-clip: padding;
	-webkit-background-clip: padding-box;
	background-clip: padding-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
::-webkit-input-placeholder {
	color: #fafafa;
}
:-moz-placeholder {
	color: #fafafa;
}
::-moz-placeholder {
	color: #fafafa;
}
:-ms-input-placeholder {
	color: #fafafa;
}

/* 枠の色 */
input[type="text"]:focus {
	outline: solid 1px #2a99fb;
}
input[type="password"]:focus {
	outline: solid 1px #2a99fb;
}

/* ボタン */
button.tml-button {
	margin-bottom: 25px;
	background-color: #2a99fb;
	padding: 12px 45px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	border: 1px solid #2a99fb;
	-webkit-transition: 0.5s;
	transition: 0.5s;
	display: inline-block;
	cursor: pointer;
	width: 100%;
	color: #fff;
}
button.tml-button:hover {
	background: #0488fd;
}

/* パスワードをお忘れですか？ */
.tml-links {
	display: none !important;
}

/* ログアウトしました。 */
.tml .tml-action-confirmaction .success,
.tml .tml-error,
.tml .tml-message,
.tml .tml-success {
	width: 100% !important;
	margin: 0 0 3em !important;
	padding: 0.25em 0 !important;
	color: #2a99fb;
	font-weight: bold;
	border-left: none !important;
	box-shadow: none !important;
	display: block;
}

/**
 * レスポンシブ: PC用 ウィンドウ幅1200px以下共通
 */
@media screen and (max-width: 1200px) {
	/* ___________________________________

  共通
____________________________________ */

	.o1200_only {
		display: none;
	}
	.u1200_only {
		display: block;
	}

	/* ___________________________________

  ヘッダ
____________________________________ */

	/* ------------------------------
   ロゴ
------------------------------ */
	h1.site-logo img {
		width: 100%;
	}

	.header {
		/*display: none;*/
	}
	.header ul.outer li.wrapper-nav {
		display: none;
	}
	.header_inner {
		width: 100%;
	}
	.header ul.outer {
		width: 96%;
		justify-content: flex-start;
		align-items: center;
	}
	#wp_nav_h.sp_only {
		display: block !important;
	}

	/* ナビゲーション
------------------------- */
	#wp_nav_h button#MenuBtn_h {
		top: 0%;
		right: 2%;
		width: 8%;
		height: 44px;
	}
	#nav_h {
		-webkit-transition: all 0.5s ease;
		-moz-transition: all 0.5s ease;
		transition: all 0.5s ease;
	}
	#nav_h.open {
		margin-right: 0;
	}

	/* ------------------------------
   SP ナビゲーション（NEW）
------------------------------ */
	.wrapper_nav-btn {
		position: absolute;
		top: 0;
		right: 0;
		z-index: 160;
	}
	.MenuBtn {
		position: relative;
		cursor: pointer;
		width: 50px;
		height: 50px;
	}
	.MenuBtn span {
		display: inline-block;
		transition: all 0.4s;
		position: absolute;
		left: 14px;
		height: 2px;
		border-radius: 5px;
		background: #fff;
		width: 45%;
	}
	.MenuBtn span:nth-of-type(1) {
		top: 13px;
	}
	.MenuBtn span:nth-of-type(2) {
		top: 19px;
	}
	.MenuBtn span:nth-of-type(3) {
		top: 25px;
	}
	.MenuBtn span:nth-of-type(3)::after {
		content: "Menu";
		position: absolute;
		top: 5px;
		left: -2px;
		color: #fff;
		font-size: 0.6rem;
		text-transform: uppercase;
	}
	.MenuBtn.active span:nth-of-type(1) {
		top: 14px;
		left: 18px;
		transform: translateY(6px) rotate(-45deg);
		width: 30%;
	}
	.MenuBtn.active span:nth-of-type(2) {
		opacity: 0;
	}
	.MenuBtn.active span:nth-of-type(3) {
		top: 26px;
		left: 18px;
		transform: translateY(-6px) rotate(45deg);
		width: 30%;
	}
	.MenuBtn.active span:nth-of-type(3)::after {
		content: "Close";
		transform: translateY(0) rotate(-45deg);
		top: 5px;
		left: 4px;
	}

	/* ___________________________________

  フッタリンク
____________________________________ */

	#footer-link ul.outer {
		width: 96%;
	}

	/* ___________________________________

  フッタ
____________________________________ */

	/* ------------------------------
   背景
------------------------------ */
	.footer-inner {
		width: 96%;
	}

	/* ------------------------------
   フッタメニュー
------------------------------ */
	footer .footer-nav {
		width: 90%;
		margin: 0 auto;
		padding: 0 5%;
	}
	footer .footer-nav ul.outer {
		width: 80%;
		margin: 0 auto;
		padding: 2% 0;
	}

	/* ___________________________________

  コンテンツ
____________________________________ */

	/* タイトル
--------------------------- */
	.ttlarea h1 {
		width: 96%;
	}

	/* ul.number
--------------------------- */
	ul.number {
		width: 100%;
	}

	/* ページネーション
--------------------------- */
	.pagination {
		width: 100%;
	}

	/* パンくず（404ページ）
--------------------------- */
	.error404 .breadcrumbs {
		width: 96%;
		padding: 1em 2%;
	}
}

/**
 * レスポンシブ: PC用 ウィンドウ幅811px以上、1200px以下
 */
@media screen and (min-width: 811px) and (max-width: 1200px) {
	/* ___________________________________

  共通セレクタ
____________________________________ */

	.tb_only {
		display: none;
	}
	.sp_only {
		display: none;
	}
	.pc_only {
		display: block;
	}

	/* ___________________________________

  ヘッダ
____________________________________ */

	/* ------------------------------
   ロゴ
------------------------------ */
	.header ul.outer li.logo {
		flex: 0 0 15%;
	}
	h1.site-logo {
		height: 30px;
		padding: 10px 0;
	}

	/* ------------------------------
   メイン
------------------------------ */
	main {
		width: 90%;
	}
	.main_content,
	.introduction {
		width: 100%;
	}

	/* ========================================

  下層ページ　共通タグ

======================================== */

	/* パンくず
--------------------------- */
	.breadcrumbs {
		width: 100%;
		padding: 0 0 1%;
	}

	/* ========================================

  アーカイブ

======================================== */
	.container_subpage {
		width: 96%;
	}

	/* ___________________________________

  ログイン画面
____________________________________ */

	.page-template-page-login ul#wrapper_login-form {
		width: 70%;
	}
}

/**
 * レスポンシブ: TB用 ウィンドウ幅1090px以下共通
 */
@media screen and (max-width: 1090px) {
	/* ___________________________________

  フッタリンク
____________________________________ */

	#footer-link ul.outer li.content_wrapper h3 {
		font-size: 12px;
	}

	/* 項目
--------------------------- */
	#footer-link ul.inner li {
		font-size: 11px;
	}

	/* ___________________________________

  ログイン画面
____________________________________ */

	.page-template-page-login ul#wrapper_login-form {
		width: 80%;
	}
}

/**
 * レスポンシブ: TB用 ウィンドウ幅1020px以下共通
 */
@media screen and (max-width: 1020px) {
	/* ___________________________________

  フッタ
____________________________________ */

	/* ------------------------------
   フッタメニュー
------------------------------ */

	/* MENU
--------------------------- */
	footer .footer-nav ul.outer li.menu {
		flex: 0 0 39%;
		margin-right: 2%;
	}
	footer .footer-nav ul.outer li.sns {
		flex: 0 0 59%;
	}

	/* パンくず
--------------------------- */
	.breadcrumbs::after {
		width: 2.5vw;
	}
}

/**
 * レスポンシブ: TB用 ウィンドウ幅850px以下共通
 */
@media screen and (max-width: 850px) {
	/* ___________________________________

  フッタ
____________________________________ */

	footer .footer-nav ul.outer {
		width: 90%;
		margin: 0 auto;
		padding: 2% 0;
	}

	/* パンくず
--------------------------- */
	.breadcrumbs::after {
		width: 3vw;
	}
}

/**
 * レスポンシブ: TB用 ウィンドウ幅641px以上、810px以下
 */
@media screen and (min-width: 641px) and (max-width: 810px) {
	/* ___________________________________

  共通セレクタ
____________________________________ */

	.tb_only {
		display: block;
	}
	.sp_only {
		display: none;
	}
	.pc_only {
		display: none;
	}

	/* ------------------------------
   見出し
------------------------------ */
	.main_content h1.type1 {
		font-size: 27px;
	}
	.main_content h2.type1 {
		font-size: 25px;
	}
	.main_content h3 {
		font-size: 22px;
	}

	/* ___________________________________

  アーカイブ
____________________________________ */

	/* 見出し
--------------------------- */
	.container_subpage h1.type1 {
		font-size: 27px;
	}

	/* ___________________________________

  ヘッダ
____________________________________ */

	/* ------------------------------
   ロゴ
------------------------------ */
	h1.site-logo {
		height: 30px;
		padding: 10px 0;
	}

	/* ナビゲーション
------------------------- */
	#wp_nav_h button#MenuBtn_h {
		top: 0%;
		right: 2%;
		width: 6%;
		height: 50px;
	}

	/* ___________________________________

  フッタ
____________________________________ */

	/* ------------------------------
   メイン
------------------------------ */
	main {
		width: 96%;
	}
	.main_content,
	.introduction {
		width: 100%;
	}

	/* ========================================

  下層ページ　共通タグ

======================================== */

	/* パンくず
--------------------------- */
	.breadcrumbs {
		width: 100%;
		padding: 0 0 1em;
	}

	.breadcrumbs::after {
		width: 3.3vw;
	}

	/* ___________________________________

  コンテンツ
____________________________________ */

	/* タイトル
--------------------------- */
	.ttlarea {
		padding-top: 50px;
	}

	/* ========================================

  アーカイブ

======================================== */
	.container_subpage {
		width: 96%;
	}

	/* レイアウト
--------------------------- */
	#post-list li.archive-li ul.inner li.txt {
		font-size: 12px;
	}

	/* ========================================

  記事

======================================== */

	#news {
		width: 100%;
	}

	/* ___________________________________

  ログイン画面
____________________________________ */

	.page-template-page-login ul#wrapper_login-form {
		width: 90%;
	}
}

/**
 * レスポンシブ: TB用 ウィンドウ幅754px以下共通
 */
@media screen and (max-width: 754px) {
	/* ___________________________________

  フッタ
____________________________________ */

	footer .footer-nav ul.outer {
		width: 96%;
		margin: 0 auto;
		padding: 2% 0;
	}
	footer .footer-nav ul.outer li.menu {
		flex: 0 0 29%;
		margin-right: 2%;
	}
	footer .footer-nav ul.outer li.sns {
		flex: 0 0 69%;
	}
}

/**
 * レスポンシブ: SP用 ウィンドウ幅640px以下
 */
@media screen and (max-width: 640px) {
	/* ___________________________________

  共通セレクタ
____________________________________ */

	.sp_only {
		display: block;
	}
	.pc_only {
		display: none;
	}
	.tb_only {
		display: none;
	}

	/* ------------------------------
   見出し
------------------------------ */
	.main_content h1.type1 {
		font-size: 26px;
	}
	.main_content h2.type1 {
		font-size: 24px;
	}
	.main_content h3 {
		font-size: 20px;
	}

	/* ___________________________________

  アーカイブ
____________________________________ */

	/* 見出し
--------------------------- */
	.container_subpage h1.type1 {
		font-size: 26px;
	}

	/* ------------------------------
   メイン
------------------------------ */
	main {
		width: 96%;
	}
	.main_content,
	.introduction {
		width: 100%;
	}

	/* ___________________________________

  コンテンツ共通
____________________________________ */

	/* タイトル
--------------------------- */
	.ttlarea {
		padding-top: 44px;
	}

	/* 背景画像 */
	.tag .ttlarea,
	.category .ttlarea,
	.archive .ttlarea,
	.page-template-page-login .ttlarea,
	.error404 .ttlarea {
		background: linear-gradient(
				to top,
				rgba(92, 129, 180, 0.5) 0%,
				rgba(255, 141, 141, 0.5) 100%
			),
			url(../../content/img/header-bg1_sp.jpg);
		background-repeat: no-repeat !important;
		background-position: center center !important;
		background-size: cover;
	}
	.single-content .ttlarea,
	.tax-content_category .ttlarea,
	.tax-content_tag .ttlarea,
	.post-type-archive-content .ttlarea {
		background: linear-gradient(
				to top,
				rgba(92, 129, 180, 0.5) 0%,
				rgba(255, 141, 141, 0.5) 100%
			),
			url(../../content/img/header-bg1_sp.jpg);
		background-repeat: no-repeat !important;
		background-position: center center !important;
		background-size: cover;
	}
	.page-template-page-graduation-works .ttlarea {
		background: linear-gradient(
				to top,
				rgba(92, 129, 180, 0.5) 0%,
				rgba(255, 141, 141, 0.5) 100%
			),
			url(../../content/img/header-bg1_sp.jpg);
		background-repeat: no-repeat !important;
		background-position: center center !important;
		background-size: cover;
	}
	.page-template-page-sitemap .ttlarea {
		background: linear-gradient(
				to top,
				rgba(92, 129, 180, 0.5) 0%,
				rgba(255, 141, 141, 0.5) 100%
			),
			url(../../content/img/header-bg1_sp.jpg);
		background-repeat: no-repeat !important;
		background-position: center center !important;
		background-size: cover;
	}

	/* デモページ
--------------------------- */
	.page-template-page-demonstration .ttlarea {
		background: linear-gradient(
				to top,
				rgba(92, 129, 180, 0.5) 0%,
				rgba(255, 141, 141, 0.5) 100%
			),
			url(../../content/img/header-bg1_sp.jpg);
		background-repeat: no-repeat !important;
		background-position: center center !important;
		background-size: cover;
	}
	.page-template-page-demonstration_ae .ttlarea {
		background: linear-gradient(
				to top,
				rgba(92, 129, 180, 0.5) 0%,
				rgba(255, 141, 141, 0.5) 100%
			),
			url(../../content/img/header-bg1_sp.jpg);
		background-repeat: no-repeat !important;
		background-position: center center !important;
		background-size: cover;
	}
	.page-template-page-graduation-works_de .ttlarea {
		background: linear-gradient(
				to top,
				rgba(92, 129, 180, 0.5) 0%,
				rgba(255, 141, 141, 0.5) 100%
			),
			url(../../content/img/header-bg1_sp.jpg);
		background-repeat: no-repeat !important;
		background-position: center center !important;
		background-size: cover;
	}

	/* ------------------------------
   見出し
------------------------------ */
	.ttlarea h1 {
		font-size: 26px;
	}
	h2.type1 {
		font-size: 20px;
	}

	/* ___________________________________

  ヘッダ
____________________________________ */

	/* ------------------------------
   ロゴ
------------------------------ */
	.header ul.outer li.logo {
		flex: 0 0 20%;
		margin: 0;
	}
	h1.site-logo {
		height: 30px;
		padding: 7px 0;
	}

	/* ナビゲーション
------------------------- */
	#wp_nav_h button#MenuBtn_h {
		top: 0%;
		right: 2%;
		width: 6%;
		height: 44px;
	}

	/* ___________________________________

  フッタ
____________________________________ */

	footer .footer-contents-list h3 {
		margin-top: 1em;
	}
	footer .footer-contents-list ul.outer li.content h3 {
		margin-top: 0;
	}

	/* コンテンツリスト
--------------------------- */
	footer .footer-contents-list ul.outer li {
		flex: 0 0 auto;
		width: 100%;
		height: auto;
		max-width: 100%;
		border-right: none;
		padding-left: 0;
	}
	footer .footer-contents-list ul.inner {
		flex-direction: row;
	}
	footer .footer-contents-list ul.inner li {
		flex: 0 0 49%;
		margin-right: 2%;
		padding-left: 0;
	}
	footer .footer-contents-list ul.inner li:nth-child(2n) {
		margin-right: 0;
	}
	footer .footer-contents-list ul.inner li:first-child {
		padding-left: 0;
	}

	/* ___________________________________

  フッタリンク
____________________________________ */

	#footer-link ul.outer li.content_wrapper {
		flex: 0 0 49%;
		margin: 0 2% 2% 0;
	}
	#footer-link ul.outer li.content_wrapper:nth-child(5n) {
		margin-right: 2%;
	}
	#footer-link ul.outer li.content_wrapper:nth-child(3n) {
		margin-right: 2%;
	}
	#footer-link ul.outer li.content_wrapper:nth-child(2n) {
		margin-right: 0;
	}

	/* ========================================

  下層ページ　共通タグ

======================================== */

	/* パンくず
--------------------------- */
	.breadcrumbs {
		width: 100%;
		padding: 0 0 2%;
	}

	.breadcrumbs::after {
		width: 4vw;
	}

	/* ========================================

  アーカイブ

======================================== */
	.container_subpage {
		width: 96%;
	}
	#post-list li.archive-li {
		flex: 0 0 49%;
		margin: 0 2% 4% 0;
	}
	#post-list li.archive-li:nth-child(2n) {
		margin-right: 0 !important;
	}
	ul#content-list li:nth-child(5n) {
		margin-right: 2%;
	}
	#post-list li.archive-li:nth-child(5n) {
		margin-right: 2%;
	}

	/* ========================================

  記事

======================================== */

	.single ul#post-list {
		flex-direction: column;
	}

	/* 見出し
--------------------------- */
	.single .container_subpage ul#post-list li.main h1 {
		font-size: 20px;
	}
	.single .container_subpage ul#post-list li.main h2 {
		font-size: 18px;
	}

	/* 詳細
--------------------------- */
	.single .container_subpage ul#post-list li.main {
		flex: 0 0 auto;
		margin: 0 0 2%;
		width: 96%;
		max-width: 96%;
	}
	.single .container_subpage ul#post-list li.sub {
		flex: 0 0 auto;
		width: 96%;
		max-width: 96%;
	}

	/* ボタン
--------------------------- */
	div.btn a {
		font-size: 14px;
	}

	/* ___________________________________

  ログイン画面
____________________________________ */

	.page-template-page-login ul#wrapper_login-form {
		width: 100%;
	}
	.page-template-page-login ul#wrapper_login-form li {
		width: 60%;
	}
}

/**
 * レスポンシブ: SP用 ウィンドウ幅480px以下
 */
@media screen and (max-width: 480px) {
	/* ------------------------------
   見出し
------------------------------ */
	.main_content h1.type1 {
		font-size: 25px;
	}
	.main_content h2.type1 {
		font-size: 23px;
	}
	.main_content h3 {
		font-size: 18px;
	}

	/* ___________________________________

  アーカイブ
____________________________________ */

	/* 見出し
--------------------------- */
	.container_subpage h1.type1 {
		font-size: 25px;
	}

	/* ___________________________________

  ヘッダ
____________________________________ */

	/* ------------------------------
   ロゴ
------------------------------ */
	.header ul.outer li.logo {
		flex: 0 0 26%;
		margin: 0;
	}
	h1.site-logo {
		height: 30px;
		padding: 7px 0;
	}

	/* ___________________________________

  フッタリンク
____________________________________ */

	#footer-link ul.outer li.content_wrapper {
		flex: 0 0 49%;
		margin: 0 2% 2% 0;
	}
	#footer-link ul.outer li.content_wrapper:nth-child(5n) {
		margin-right: 2%;
	}
	#footer-link ul.outer li.content_wrapper:nth-child(3n) {
		margin-right: 2%;
	}
	#footer-link ul.outer li.content_wrapper:nth-child(2n) {
		margin-right: 0;
	}

	/* ------------------------------
   フッタメニュー
------------------------------ */

	/* MENU
--------------------------- */
	footer .footer-nav ul.outer li.menu {
		display: none;
	}
	footer .footer-nav ul.outer li.sns {
		flex: 0 0 auto;
		max-width: 100%;
		width: 100%;
	}

	/* SNS
--------------------------- */
	footer .footer-nav ul.outer {
		justify-content: center;
	}
	footer .footer-nav ul.outer li.sns ul.inner {
		justify-content: center;
	}
	footer .footer-nav ul.outer li.sns ul.inner li {
		flex: 0 0 15%;
		margin-right: 5%;
	}
	footer .footer-nav ul.outer li.sns ul.inner li:last-child {
		flex: 0 0 15%;
		margin-right: 0;
	}

	/* FOLLOW US */
	footer .footer-nav ul.outer li.sns ul.inner li.follow {
		flex: 0 0 auto;
		max-width: 100%;
		width: 100%;
		color: #fff;
		font-size: 12px;
		text-align: center;
		white-space: nowrap;
	}

	footer .footer-nav ul.outer li.sns ul.inner li a {
		font-size: 18px;
	}

	footer .footer-nav ul.outer li.sns ul.inner li {
		flex: 0 0 10%;
		margin-right: 1%;
	}
	footer .footer-nav ul.outer li.sns ul.inner li:last-child {
		flex: 0 0 10%;
		margin-right: 0;
	}

	/* ------------------------------
   ナビゲーション02（右）
------------------------------ */
	.nav-menu02 ul.nav-menu02 {
		justify-content: center;
	}

	/* ========================================

  下層ページ　共通タグ

======================================== */

	/* パンくず
--------------------------- */
	.breadcrumbs {
		font-size: 2.5vw;
	}
	.breadcrumbs::after {
		width: 5.5vw;
	}

	/* ___________________________________

  ログイン画面
____________________________________ */

	.page-template-page-login ul#wrapper_login-form li {
		width: 70%;
	}
}

/**
 * レスポンシブ: SP用 ウィンドウ幅428px以下
 */
@media screen and (max-width: 428px) {
	/* ------------------------------
   見出し
------------------------------ */
	.main_content h1.type1 {
		font-size: 24px;
	}
	.main_content h2.type1 {
		font-size: 22px;
	}
	.main_content h3 {
		font-size: 18px;
	}

	/* ___________________________________

  アーカイブ
____________________________________ */

	/* 見出し
--------------------------- */
	.container_subpage h1.type1 {
		font-size: 24px;
	}

	/* -------------------------
   ページのトップへ戻る
------------------------- */
	#fixedTop {
		line-height: 40px;
		width: 40px;
		height: 40px;
	}

	/* ___________________________________

  フッタ
____________________________________ */

	/* フッタメニュー
--------------------------- */
	footer .footer-nav2 ul.outer {
		width: 90%;
	}
	.nav-menu02 ul.nav-menu02 {
		justify-content: center;
	}

	/* ___________________________________

  ログイン画面
____________________________________ */

	.page-template-page-login ul#wrapper_login-form li {
		width: 80%;
	}
}

/**
 * レスポンシブ: SP用 ウィンドウ幅414px以下
 */
@media screen and (max-width: 414px) {
	/* ------------------------------
   見出し
------------------------------ */
	.main_content h1.type1 {
		font-size: 23px;
	}
	.main_content h2.type1 {
		font-size: 21px;
	}
	.main_content h3 {
		font-size: 18px;
	}

	/* ___________________________________

  アーカイブ
____________________________________ */

	/* 見出し
--------------------------- */
	.container_subpage h1.type1 {
		font-size: 23px;
	}
}

/**
 * レスポンシブ: SP用 ウィンドウ幅375px以下
 */
@media screen and (max-width: 375px) {
	/* ___________________________________

  ヘッダ
____________________________________ */

	/* ------------------------------
   ロゴ
------------------------------ */
	.header ul.outer li.logo {
		flex: 0 0 30%;
		margin: 0;
	}
	h1.site-logo {
		height: 30px;
		padding: 7px 0;
	}

	/* ナビゲーション
------------------------- */
	#wp_nav_h button#MenuBtn_h {
		top: 0%;
		right: 2%;
		width: 10%;
		height: 44px;
	}

	/* ___________________________________

  フッタ
____________________________________ */

	/* コピーライト
--------------------------- */
	footer .copyright p {
		font-size: 11px;
	}

	/* ___________________________________

  コンテンツ共通
____________________________________ */

	/* ------------------------------
   見出し
------------------------------ */
	.main_content h1.type1 {
		font-size: 21px;
	}
	.main_content h2.type1 {
		font-size: 19px;
	}
	.main_content h3 {
		font-size: 17px;
	}

	/* ___________________________________

  アーカイブ
____________________________________ */

	/* 見出し
--------------------------- */
	.container_subpage h1.type1 {
		font-size: 21px;
	}

	/* レイアウト
--------------------------- */
	#post-list li.archive-li ul.inner li.txt {
		font-size: 11px;
	}

	/* ___________________________________

  ログイン画面
____________________________________ */

	.page-template-page-login ul#wrapper_login-form li {
		width: 90%;
	}
}

/**
 * レスポンシブ: SP用 ウィンドウ幅360px以下
 */
@media screen and (max-width: 360px) {
	/* ___________________________________

  フッタ
____________________________________ */

	footer .footer-contents-list h3 a {
		font-size: 3.5vw;
	}
	footer .footer-contents-list ul.inner li a.fa {
		font-size: 3vw;
	}
	footer .copyright p {
		font-size: 2.5vw;
	}

	/* ___________________________________

  コンテンツ共通
____________________________________ */

	/* ------------------------------
   見出し
------------------------------ */
	h2.type1 {
		padding-left: 12vw;
		font-size: 6vw;
	}
	h2.type1::before {
		width: 10vw;
	}
	span.number {
		font-size: 5vw;
	}
}

/**
 * レスポンシブ: SP用 ウィンドウ幅340px以下
 */
@media screen and (max-width: 340px) {
	/* ------------------------------
   フッタメニュー
------------------------------ */

	footer .footer-nav ul.outer li.menu {
		flex: 0 0 29%;
		margin-right: 10%;
	}
	footer .footer-nav ul.outer li.sns {
		flex: 0 0 61%;
	}

	/* SNS
--------------------------- */
	footer .footer-nav ul.outer li.sns ul.inner li {
		flex: 0 0 15%;
		margin-right: 5%;
	}
	footer .footer-nav ul.outer li.sns ul.inner li:last-child {
		flex: 0 0 15%;
		margin-right: 0;
	}

	/* FOLLOW US */
	footer .footer-nav ul.outer li.sns ul.inner li.follow {
		flex: 0 0 auto;
		max-width: 100%;
		width: 100%;
		color: #fff;
		font-size: 12px;
		white-space: nowrap;
	}
	footer .footer-nav ul.outer li.sns ul.inner li a {
		font-size: 18px;
	}
}

/**
 * レスポンシブ: SP用 ウィンドウ幅320px以下
 */
@media screen and (max-width: 320px) {
	/* ___________________________________

  ヘッダ
____________________________________ */

	/* ------------------------------
   ロゴ
------------------------------ */
	.header ul.outer li.logo {
		flex: 0 0 30%;
		margin: 0;
	}
	h1.site-logo {
		height: 30px;
		padding: 5px 0;
	}

	/* ------------------------------
   SP ナビゲーション（NEW）
------------------------------ */
	.wrapper_nav-btn {
		top: -5px;
	}

	/* ------------------------------
   ナビゲーション02（右）
------------------------------ */
	.nav-menu02 a {
		padding: 0 0.5em;
	}

	/* ___________________________________

  フッタ
____________________________________ */

	/* SNS
--------------------------- */
	footer .footer-nav ul.outer {
		justify-content: center;
	}

	/* ___________________________________

  コンテンツ共通
____________________________________ */

	/* タグ
--------------------------- */
	.single .tag a,
	.page-template .tag a,
	.archive .tag a,
	.home .tag a {
		font-size: 3vw;
	}

	/* ------------------------------
   見出し
------------------------------ */
	.main_content h1.type1 {
		font-size: 20px;
	}
	.main_content h2.type1 {
		font-size: 18px;
	}
	.main_content h3 {
		font-size: 16px;
	}

	/* ___________________________________

  アーカイブ
____________________________________ */

	/* 見出し
--------------------------- */
	.container_subpage h1.type1 {
		font-size: 21px;
	}
	#post-list li.archive-li ul.inner li.txt {
		font-size: 2.8vw;
	}
}

.big-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 40px;
	margin-bottom: 40px;
}
@media screen and (min-width: 769px) {
	.big-title {
		max-width: 839px;
		display: flex;
		justify-content: center;
		align-items: center;
		margin-bottom: 40px;
	}
}
@media screen and (max-width: 768px) {
	.big-title {
		margin-top: 40px !important;
		text-align: center;
	}
}
.big-title img {
	margin-bottom: 16px;
	max-width: 375px;
	width: 50%;
	margin-left: auto;
	margin-right: auto;
}
@media screen and (min-width: 769px) {
	.big-title img {
		margin-left: 0;
		margin-right: 10%;
		margin-bottom: 0;
		width: 100%;
	}
}
@media screen and (max-width: 768px) {
	.big-title img {
		display: none;
	}
}
.big-title__text {
	max-width: 480px;
	margin-bottom: 20px;
}
@media screen and (min-width: 769px) {
	.big-title__text {
		margin-bottom: 0;
	}
}
@media screen and (max-width: 768px) {
	.big-title__text {
		max-width: none;
	}
}
.big-title__text h2 {
	font-size: 32px;
	font-weight: 700;
	margin-bottom: 16px;
}
@media screen and (min-width: 769px) {
	.big-title__text h2 {
		margin-bottom: 32px;
	}
}
@media screen and (max-width: 768px) {
	.big-title__text h2 {
		position: relative;
		z-index: 0;
	}
}
@media screen and (max-width: 768px) {
	.big-title__text h2::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		z-index: -1;
		width: 100vw;
		height: 100%;
	}
}
.big-title__text h2.basic-lesson::before {
	background-color: #72b4f3;
}
.big-title__text h2.advanced-lesson::before {
	background-color: #fcb6b0;
}
.big-title__text h2.bg04::before {
	background-color: #afb0d4;
}
.big-title__text p {
	font-size: 16px;
	font-weight: 500;
}
@media screen and (min-width: 769px) {
	.big-title__text p {
	}
}
