/*
Theme Name: Lightning Child KandIT
Theme URI: https://lightning.vektor-inc.co.jp/
Template: lightning
Description: 
Author: 神田ITスクール
Tags: 
Version: 0.6.0
*/

/* ---------- COMMON ---------- */
:root {
	--vk-color-primary: #223f96;
	--vk-color-primary-dark: #1b2d7c;
	--color-primary-transparent: rgba(34, 63, 150, 0.1);
}

iframe {
	border: 0;
	width: 100%;
}

.grid {
    display: grid;
	grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    margin-top: 20px;
}

@media screen and (max-width:767px){
	.sp-br {
		display: block;
	}
}

.small {
	font-size: 0.8em;
}

h2, h3, h4 {
	margin: 2em 0 0.8em;
}
h5, h6 {
	margin: 1em 0;
}

h3 {
	font-size: 1.5em;
}
.small-h {
	font-size: 1.3em;
}

h2, .mainSection-title {
	border-top-color: var(--vk-color-primary);
}

h4 {
    padding-top: 8px;
    padding-bottom: 5px;
    font-size: 1.2em;
    border-top: 1px solid rgba(0,0,0,.05);
    border-bottom: 1px solid rgba(0,0,0,.05);
}
h4.no-border {
	border: none;
}
h5 {
	font-size: 1em;
}

a {
	color: var(--vk-color-primary);
}
a:hover {
	color: var(--vk-color-primary-dark);
}

.cercle {
	border-radius: 50%;
}

.gray-table {
    border-collapse: collapse;
    border: 1px #999 dashed;
    margin-bottom: 10px;
}
.gray-table th, .gray-table td {
    border: 1px #999 dashed;
    padding: 6.5px 0.8em 3px;
}
.gray-table .colored {
    background-color: rgba(153, 153, 153, 0.1);
}

/* 強調（蛍光ペン） */
.under-line {
	background-image: linear-gradient(180deg, rgba(255, 255, 255, 0) 50%, #ff6 50% 90%, rgba(255, 255, 255, 0) 90%);
}

/* 枠線ボタン */
.wp-block-button.is-style-outline>.wp-block-button__link {
	border: 1px solid;
}

.wp-block-button__link.mini-btn {
    display: inline-block;
    margin-top: 0.5em;
	font-size: 0.8em;
    padding: 0.7em 1.5em;
    border-radius: 5px;
}

/* ---------- FOOTER ---------- */
.siteFooter { 
	background: url(images/bg_bk.jpg) left top repeat;
	color: #d2d2d3;
	border-top: 0;
}
.siteFooter li a {
	color: #d2d2d3;
}
.copySection p:nth-child(2) {
    display:none;
}

#text-19 .subSection-title {
	margin-bottom: 9px;
}
#text-19 .textwidget {
	font-size: 0.9em;
}

.sectionBox.footerWidget {
	padding-bottom: 0;
}
.sectionBox.copySection {
	padding-top: 0;
}

/* ---------- SIDE BAR ---------- */
.sideSection h1 {
	color: #666;
}

.sideSection ul {
	list-style: none;
	padding-left: 0;
}

.sideSection li {
	border-bottom: 1px dashed #e9e9e9;
	padding: 3px 0.5em 11px;
	font-size: 0.8em;
}

.subSection .btn {
	border: 2px solid var(--vk-color-primary);
}

.sideSection a {
	color: #666;
}

.sideSection .btn-default {
	color: var(--vk-color-primary);
	font-weight: bold;
}

.btn-default:hover {
	color: #fff;
}

/* ---------- TOP PAGE ---------- */
/* ふたつのコースのアイコンとボタンの設定 */
.grid.courses {
	grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
	column-gap: 2em;
	row-gap: 3em;
}
.course-intro {
	text-align: center;
}
.course-intro a {
	display: inline-block;
}
.course-intro a:hover {
	text-decoration-line: none;
}
.course-intro img {
	width: 150px;
} 
.course-intro .button {
	display: block;
	min-width: 17em;
	margin-top: 0.8em;
	color: #fff;
	font-size: 1.2em;
	padding: 0.7em 2em;
	background-image: linear-gradient(90deg, rgba(34, 63, 150, 1), rgba(27, 45, 124, 1));
	border-radius: 5px;
	transition: all .1s ease-in;
}

/* 受講形態の部分 */
.grid.course-format-img {
	display: flex;
	gap: 0.5em;
	flex-wrap: wrap;
}
.course-format-img img {
	width: 12em;
	border-radius: 3px;
}

.course-format-title {
	margin-top: 1em;
	margin-bottom: 0;
}

.top-diff-table {
	text-align: center;
}
.top-diff-table .col-1 {
	width: 20%;
}
.top-diff-table .col-2 {
	width: 40%;
}

/* 強調（蛍光ペン） */
.p-description strong {
	background-image: linear-gradient(180deg, rgba(255, 255, 255, 0) 50%, #ff6 50% 90%, rgba(255, 255, 255, 0) 90%);
}

/* お知らせとお役立ち情報 */
.top-mini-menu {
	grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
	gap: 2em;
}

.top-mini-menu .wp-block-heading {
	font-size: 1.5em;
}

.top-mini-menu .su-posts-default-loop h2.su-post-title {
	border: 0;
	font-size: 1em;
	padding-bottom: 2px;
}

.top-mini-menu .su-posts-default-loop .su-post {
    margin-bottom: 0.5em;
}
.top-mini-menu .su-posts-default-loop .su-post-meta {
    display: block;
}

.top-mini-menu .su-post-excerpt p {
	display: none;
}

.top-mini-menu .info {
	font-weight: 700;
}

.grid .wp-block-button__link.mini-btn {
	display: inline-block;
    margin-top: 0.5em;
    font-size: 0.7em;
    padding: 0.7em 1.5em;
    border-radius: 5px;
}

/* 3つのドット */
.wp-block-separator.is-style-dots:before {
    font-weight: bold;
}

/* 神田ITスクールの宣伝 */
#kenshu_introduction {
	padding: 30px 20px;
	border: 3px solid #e6e6e6;
}

.kenshu_title {
	font-size: 1.4em;
	border-top: 1px solid #999;
  	border-bottom: 1px solid #999;
	padding-top: 15px;
	padding-bottom: 12px;
	margin-bottom: 0.8em;
}
#kenshu_introduction iframe {
	height: 2200px;
}
@media screen and (max-width:767px){
	#kenshu_introduction iframe {
		height: 3100px;
	}
}

/* ---------- 各コース詳細ページ ---------- */
.sub-title {
	font-size: 0.8em;
}

.list-style-none {
	list-style: none;
	padding: 0;
}

/* お問い合わせボタン */
.contact-btn .wp-block-button__link {
	background-color: #FF9800;
}
.contact-btn .wp-block-button__link:hover {
	background-color: #E88A00 !important;
}
@media screen and (max-width:767px){
	.wp-block-buttons>.wp-block-button, .wp-block-buttons>.wp-block-button a {
		width: 100%;
	}
}

/* 悩みがある人 */
.nega-cam {
	color: #666;
	width: 95%;
	margin: 2em auto 1em;
}

.nega-cam > div {
	margin-top: 1.5em;
}

h4.list-header {
    font-size: 1.5em;
    font-weight: bolder;
    margin: 0;
}

.nega-cam ul {
	margin-top: 0.8em;
}

.nega-cam .image-right, .nega-cam .image-left {
	display: flex;
    gap: 2em;
	margin: 0;
	font-size: 0.9em;
}

.nega-cam .image-left {
	flex-direction: row-reverse;
}

.nega-cam .img {
	max-width: 150px;
	display: flex;
	align-items: center;
	margin: 0 auto;
}
@media screen and (max-width:767px){
	.nega-cam .image-right, .nega-cam .image-left {
		gap: 0.5em;
	}
	.nega-cam .image-right, .nega-cam .image-left {
		flex-direction: column-reverse;
	}
}

/* 講座内容 */
.outer-ul > li {
	margin-bottom: 1.5em;
}

.outer-ul ul {
	margin-top: 0.5em;
}

/* 解決 */
.is-style-vk-check-mark li::before {
	color: var(--vk-color-primary);
}
.pr-sentence {
	border: 3px solid #e6e6e6;
	padding: 1.5em 2em 0;
    border-radius: 10px;
	margin: 0 auto;
}
.pr-sentence .samll {
	font-size: 0.7em;
}

/* タイムスケジュール */
.time-table {
    border-collapse: collapse;
    border: 1px var(--vk-color-primary) dashed;
    margin-bottom: 10px;
}
.time-table td {
    border: 1px var(--vk-color-primary) dashed;
    padding: 6.5px 0.8em 3px;
}
.time-table td.colored {
    background-color: var(--color-primary-transparent);
}

.time-table .time {
    text-align: center;
}

/* 講座一覧 */
div:has(>.seminar-list) {
	max-width: 930px;
	margin-right: auto;
	margin-left: auto;
}

.seminar-list {
	border: 3px solid #e6e6e6;
	padding: 1em 2em 0;
    border-radius: 10px;
}

.seminar-list>div {
	margin-top: 1em;
}

.seminar-list h4 {
	font-size: 1.5em;
	margin-bottom: 0.2em;
}
.seminar-list p {
	margin: 1em 0 0;
}
.seminar-list p, .seminar-list ul {
	margin: 0.8em 0 0;
}
.seminar-list p:nth-child(2) {
	margin-top: 0;
}

.seminar-list ul {
    list-style-type: none;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	column-gap: 1em;
	row-gap: 0.3em;
    padding-left: 0;
    text-align: center;
}
.seminar-list ul img {
    max-height: 80px;
	margin-bottom: 6px;
}
.seminar-list ul a {
    color: #555;
}
.seminar-list ul span {
    display: block;
	font-size: 0.9em;
}

/* お役立ち情報 */
.useful-list a {
	color: #666;
}

/* iframe */
#pr-3pics {
	height: 205px;
}
@media screen and (max-width:767px){
	#pr-3pics {
		height: 140px;
	}
}

#pc-lan-text {
	height: 1000px;
}

#cancel-policy {
	height: 720px;
}@media screen and (max-width:1200px){
	#cancel-policy {
		height: 800px;
	}
}
@media screen and (max-width:880px){
	#cancel-policy {
		height: 785px;
	}
}
@media screen and (max-width:767px){
	#cancel-policy {
		height: 1425px;
	}
}

p:has(#instructor) {
	text-align: center;
}
#instructor {
	max-width: 700px;
	height: 320px;
}

/* ---------- プライバシーポリシー ---------- */
#privacy-policy {
	height: 1000px;
}
@media screen and (max-width:767px){
	#privacy-policy {
		height: 1300px;
	}
}

/* ---------- 利用規約 ---------- */
#terms-of-use {
	height: 3350px;
}
@media screen and (max-width:767px){
	#terms-of-use {
		height: 5270px;
	}
}

/* ---------- FAQ ---------- */
.faq-akakuma {
	text-align: -webkit-right;
}
.faq-akakuma img {
	max-width: 35%;
}

#common-faq {
	height: 1800px;
}
@media screen and (max-width:767px){
	#common-faq {
		height: 2700px;
	}
}

/* iframe元とスタイル合わせる */
.faq {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
}

.faq h3 {
    font-size: 24px;
    border-bottom: 2px solid #0099dd;
    color: #000;
    border-bottom: #000 dashed 1px;
    padding: 11px 10px 5px;
    margin-top: 0;
    margin-bottom: 26px;
    font-weight: bold;
    line-height: 1.6;
}
.faq h3:after {
	display: none;
}
.faq .faq-content {
    font-size: 14px;
    line-height: 1.8em;
    margin-bottom: 20px;
	color: #333;
	-webkit-padding-start: 2em;
    padding-inline-start: 2em;
}
.faq .q {
	position: relative;
	font-weight: 700;
}
.faq .a {
	position: relative;
}
.faq .q:before {
	position: absolute;
    left: -1.5em;
	content: "Q：";
}
.faq .a:before {
	position: absolute;
    left: -1.5em;
	content: "A：";
}

/* ---------- 受講者の声 ---------- */
.vk_balloon_icon_image {
	width: 100%;
    height: auto;
}

#coursepage-voice{
    padding-top: 1.5em;
	& h3 {
        font-size: 1.3em;
    }
	& .btn {
		color: var(--vk-color-primary);
	}
	& .btn:hover {
		color: var(--vk-color-primary-dark);
        text-decoration-line: underline;
	}
    & .btn:focus {
		box-shadow: none;
	}
}

/* ---------- サイトマップ ---------- */
.sitemap h3 {
	font-size: 1em;
	margin-bottom: 1em;
}
.sitemap > div {
	margin-bottom: 2.5em;
}

.sitemap ul {
	margin: 1em 0;
}



/* ---------- お申し込みページ ---------- */
.col-xs-12:has(.kis-booking-form) {
	width: 100%;
}

.kis-booking-form div.message.info, .kis-booking-form div.message {
    margin-bottom: 1em;
}

.kis-booking-form select.form-control {
	border: 1px solid #ececec !important;
}


/* ---------- 引用 ---------- */
.quote-block {
    border: 3px solid #e6e6e6;
    padding: 1em 1.5em;
    border-radius: 10px;
    margin: 0 auto;
}

/* ---------- DLのサイズのラベル ---------- */
.w3eden .media-body {
    margin-left: 0.5em;
}

.w3eden .label-default {
    background-color: #777;
}
.w3eden .label {
    display: inline;
    padding: 0.2em 0.6em;
    font-size: 75%;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 0.25em;
}

.w3eden a {
	color: var(--vk-color-primary)
}
.w3eden a:hover {
    color: var(--vk-color-primary-dark);
    text-decoration: underline;
}

/* ---------------------------------- Webテキスト ---------------------------------- */
p.textpage-link {
	text-align: right;
	margin: 2em 0;
}

/* Side menu */
.widget_link_list ul li a {
    border-bottom: 1px dashed rgba(0,0,0,.05);
}
.sideSection .widget_link_list li {
    border-bottom: 0;
    padding: 0;
}

#vkexunit_childpagelist-2.widget:after {
	width: 100%;
    height: 1px;
    background-color: #999;
    margin-top: 1.5em;
}

/*  引用（ポイント）  */
.quote-block.textbook {
	margin-bottom: 1.5em;
}
.quote-block.textbook p {
	margin-bottom: 0;
}
.quote-block.textbook ul {
	margin-top: 0.7em;
}
.quote-block li:last-child {
	margin-bottom: 0;
}

/* 表 */
.gray-table.font-small th, .gray-table.font-small td {
	font-size: 85%;
}

/* 画像の縁取り */
.wp-block-image.is-style-vk-image-border figure.aligncenter img {
    border: 3px solid #999;
}

/* 画像の大きさ */
.img-80 img {
	width: 75%;
	margin: 0 auto;
}
@media screen and (max-width:992px){
	.img-80 img {
		width: 100%;
	}
}