@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* ================================== */
/* 全体・汎用css */
/* ================================== */
.header-deco {
	position: relative;
	z-index: 1;
}

.header-deco span {
	z-index: 1;
}

.header-deco::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	transform: translate(-150px,-25%);
	width: 300px;
	height: 300px;
/* 	background-image: url("https://live-shift.com/wp-content/uploads/2026/02/deco_blue_square_small.png"); */
/* 	background-image: url("https://live-shift.com/wp-content/uploads/2026/02/deco_blue_line_small.png"); */
	background-image: url("https://live-shift.com/wp-content/uploads/2026/02/deco_blue_line_small2.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	z-index: 1;
	opacity: 0.7;
}

@media (max-width: 768px) {	
	.header-deco::before {
		transform: translate(-100px,-50%);
		width: 170px;
		height: 170px;
	}
}

.box-shadow {
	box-shadow: 14px 14px 34px 0px rgba(0, 0, 0, 0.10);
}

.box-shadow-img img {
	box-shadow: 14px 14px 34px 0px rgba(0, 0, 0, 0.10);
}

.text-o-white {
/* 	-webkit-text-stroke: 3px #ffffff; */
}

/* ================================== */
/* ヘッダー */
/* ================================== */
.menu-item--header-blogparts {
	transform: translate(15px,10px);
}

.menu-item--header-blogparts a {
	font-size: 0.9rem;
/* 	padding: 1px 1px; */
}

/* ================================== */
/* ファーストビュー */
/* ================================== */
#content .first-view {
	width: 90vw;
	max-width: 1200px !important; 
	left: 50% !important;
	transform: translateX(-50%) !important;
}

/* 左上 */
.fv-bg::before {
	content: "";
	position: absolute;
	top: -1em;
	left: 0;
/* 	width: 250px; */
/* 	height: 250px; */
	width: 20vw;
	height: auto;
	aspect-ratio: 1 / 1;
	background: url("https://live-shift.com/wp-content/uploads/2026/02/deco_blue_square_left.png") no-repeat center/contain;
/* 	background: url("https://live-shift.com/wp-content/uploads/2026/02/deco_blue_line_left_r2.png") no-repeat center/contain; */
	z-index: -10;
/* 	opacity: 0.2; */
}

.fv-bg-r::before {
	content: "";
	position: absolute;
	right: 0;
	top: 15px;
	transform: translateY(-100%);
	width: 300px;
	height: 300px;
	background: url("https://live-shift.com/wp-content/uploads/2026/02/deco_blue_square_right.png") no-repeat center/contain;
/* 	background: url("https://live-shift.com/wp-content/uploads/2026/02/deco_blue_line_right.png") no-repeat center/contain; */
	z-index: -10;
/* 	opacity: 0.2; */
}

@media (max-width: 959px) {	
	.fv-bg::before {
/* 		top: 0; */
/* 		left: 0; */
/* 		width: 200px; */
/* 		height: 200px; */
		width: 30vw;
	}
	
	.fv-bg-r::before {
	width: 50vw;
	height: auto;
	aspect-ratio: 1 / 1;
	}
}

.fv-left {
}

.fv-left span {
	white-space: nowrap;
}

.fv-left_header span {
	line-height: 1.4;
}

.fv-left_text span {
	line-height: 1.6;
}

.fv-img {
	position: relative;
	transform: scale(1.2);
	margin-left: -10%;
	z-index: -99;
}

.fv-intro_column {
	width: 525px;
	margin: 0 auto;
}
.fv-intro {
	position: relative;
	width: 150px;
	height: 150px;
	background-color: #fff;
	border-radius: 50%;
	margin: 0 auto;
	z-index: 0;
}

/* グラデーション枠 */
.fv-intro::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 50%;
	padding: 3px; /* ← 枠線の太さ */
	background: linear-gradient(135deg, #11249e, #007bff);
	-webkit-mask: 
		linear-gradient(#fff 0 0) content-box, 
		linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	z-index: -1;
}

.fv-intro span {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	text-align: center;
	line-height: 1.4;
}


/* スマホ画面 */
.fv-text-column_sp {
	max-width: 600px;	
	margin: 0 auto;
}

.fv-header_sp {
	display: block;
	width: fit-content;
	margin: 0 auto;
}

.fv-text_sp {
	display: block;
	width: fit-content;
	margin: 0 auto;
}

.fv-img_sp {
	max-width: 500px;
	margin: 0 auto;
}

@media (max-width: 768px) {	
	.fv-intro_column {
		width: 100%;
		max-width: 500px;
	}
	
	.fv-intro {
		position: relative;
		width: 28vw;
		height: 28vw;
		max-width: 150px;
		max-height: 150px;
	}
	
	.fv-intro span {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 100%;
		text-align: center;
		line-height: 1.4;
	}
}

@media (max-width: 599px) {	
	.fv-text_sp {
/* 		padding-right: 50px; */
	}
}

.top_h2 {
	padding: 0 !important;
}

.top_h2::before {
	display:none !important;
}

.top_h3::before {
	display:none !important;
}

.top_h4 {
	border-left: none !important;
	padding: 0 !important;
}

/* ================================== */
/* サービス */
/* ================================== */
.services-box {
	background: #fff;
	border-radius: 5px;
/* 	box-shadow: 14px 14px 34px 0px rgba(0, 0, 0, 0.10); */
	box-shadow: 14px 14px 34px 0px rgba(0, 134, 205, 0.10);
}

.service-thumb img {
	width: 100%;
	height: 270px;
	object-fit: contain !important;
	background: #fff;
}

.divider-grad {
	height: 1px;
	margin: 50px 0;
	background: linear-gradient(
		to right,
		transparent,
		#ccc,
		transparent
	);
}

.services_check {
	width: 100%;
	max-width: 307px;
	margin: 0 auto;
}

.margin-b-none {
	margin-bottom: 0 !important;	
}

/* ================================== */
/* 代表メッセージ */
/* ================================== */
.message-img {
	opacity: 0.6;
}

.message_center {
	margin-left: auto;
	margin-right: auto;
	width: fit-content; /* テキスト幅に合わせる */
	max-width: 100%;   /* はみ出し防止 */
}

/* ================================== */
/* お知らせ・ブログ（フロントページ） */
/* ================================== */
.message_bg {
	background-color: #ffffff;
	background-image: radial-gradient(#dcdcdc 1px, transparent 1px);
	background-size: 16px 16px;
}

/* ================================== */
/* PCM講座 */
/* ================================== */
.circle-box {
	position: relative;
	padding: 1.6em 1.4em;
	z-index: 0;
}

/* 背景の丸 */
.circle-box::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);

	width: 180px;
	height: 180px;
	border-radius: 50%;

	background: #e8f3ff; /* 薄い青 */
	z-index: -1;
}

/* スマホ調整 */
@media (max-width: 768px) {
	.circle-box {
		font-size: 13px !important;
	}
	
	.circle-box::before {
		width: 150px;
		height: 150px;
	}
}

.circle-box2 {
	position: relative;
	padding: 1.6em 1.4em;
	z-index: 0;
}

/* 背景の丸 */
.circle-box2::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);

	width: 180px;
	height: 180px;
	border-radius: 50%;

	background: #e8f3ff; /* 薄い青 */
	z-index: -1;
}

/* スマホ調整 */
@media (max-width: 768px) {
	.circle-box2 {
		font-size: 13px !important;
	}
	
	.circle-box2::before {
		width: 90px;
		height: 90px;
	}
}

.h-course {
	background-color: #243ae0;
	border-radius: 99px;
	color: #fff;
	width: 220px;
	padding: 10px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* 講座スケジュールカレンダー＆リストの微調整 */
body.single-tec_calendar_embed .tribe-events.tribe-common--breakpoint-medium .tribe-events-calendar-month__day {
    min-height: 110px;
}

.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-month__day-date {
    padding: 1px;
	font-size: 18px;
}

.tribe-events .tribe-events-calendar-month__calendar-event {
    padding: 0 1px !important;
}

.tribe-events .tribe-events-calendar-month__calendar-event .tribe-events-calendar-month__calendar-event-details {
    padding: 1px !important;
}

.tribe-events .tribe-events-calendar-month__calendar-event .tribe-events-calendar-month__calendar-event-datetime {
	display: none;
}

.tribe-events .tribe-events-calendar-month__day-date-daynum {
    vertical-align: top !important;
}

.tribe-events-widget .tribe-events-widget-events-list__event-date-tag-month {
    font-size: 16px !important;
}

.tribe-common .tribe-common-cta, .tribe-common--breakpoint-medium.tribe-common .tribe-common-b3--min-medium {
    font-size: 14px !important;
}

.tribe-common .tribe-common-cta, .tribe-common--breakpoint-medium.tribe-common .tribe-common-b3--min-medium {
    margin-top: 2px;
}

/* ================================== */
/* PCMコンサル */
/* ================================== */
.cell_adj {
	background-color: transparent;
}

/* ================================== */
/* 投稿 */
/* ================================== */
/* 関連記事非表示 */
#jp-relatedposts {
    display: none !important;
}

.p-articleFoot {
	display: none;
}

/* イベント詳細ページの調整 */
.tribe-events-back {
    display: none;
}

.tribe-events-meta-group a {
	color: #000 !important;
	pointer-events: none;
	cursor: default;
}

.single-tribe_events .p-breadcrumb.-bg-on {
	display: none;
}

#tribe-events-footer {
    display: none;
}

.cpt-backBtnWrap {
	margin-top: 32px;
	text-align: center;
}

.cpt-backBtnWrap {
	margin-top: 32px;
	text-align: center;
}

.cpt-backBtn {
	display: inline-block;
	padding: 10px 18px;
	border: 1px solid #ccc;
	border-radius: 999px;
	text-decoration: none;
	background: #fff;
	transition: 0.2s;
}

.cpt-backBtn:hover {
	opacity: 0.7;
}

/* ================================== */
/* フッター前 */
/* ================================== */
.footer_b_box {
	border: 5px solid #11249e;
	border-radius: 5px;
	padding: 20px;
}

/* ================================== */
/* フッター */
/* ================================== */
.l-footer__foot .l-container {
	display: flex;
	flex-direction: column;
}

/* フッター下部の並び順を調整 */
.footer-blogparts {
	order: 1;
}

.l-footer__nav {
	order: 2;
}

.copyright {
	order: 3;
}

/* フッターメニューの線を消去 */
.l-footer__nav li:first-child a {
	border: none;
}

.l-footer__nav a {
	border: none;
}