/*
Theme Name:TwentyTwentyOne child
Theme URI:
Description:WordPressテーマ「TwentyTwentyOne」の子テーマ。
Template:twentytwentyone
Author:happyforest
Version:2.2
*/


.site-content #main.site-main {
	max-width:900px;
	margin:0 auto;
	box-shadow:0 0 10px rgba( 0, 0, 0,0.25);
	padding-top:0;
	font-size:0.95rem;
	line-height:1;
	box-sizing:border-box;
}
.takuto_salon.has-background-white .site a:focus:not(.wp-block-button__link):not(.wp-block-file__button) {
	background:inherit;
	color:inherit;
}


/* ******************************************************************************************************************** */
/* ******************************************************************************************************************** */
/* ******************************************************************************************************************** */

.mv_content * {
	box-sizing:border-box;
}
.mv_content .mv_outer {
	max-width:100% !important;
}
.mv_content .entry-content {
	margin-top:0;
}
.mv_content .mv_outer h1,
.mv_content .mv_outer h2 {
	background-color: #f90;
	padding: 20px 0;
	font-size: 1.6em;
	text-align: center;
	font-weight:bold;
}
.mv_content .mv_outer .mv_box {
	padding:20px;
}
.mv_content .mv_outer .flex_outer {
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
}
.mv_content .mv_outer .flex_outer .flex_box {
	padding:10px;
	width:50%;
}
@media (max-width:767px) {
	.mv_content .mv_outer .flex_outer .flex_box {
		width:100%;
	}
}
.mv_content .mv_outer .flex_outer .flex_box > a {
	display:block;
	box-shadow:0 0 10px rgba( 0, 0, 0,0.25);
	text-decoration:none !important;
}
.mv_content .mv_outer .flex_outer .flex_box span.image {
	background-position:center;
	background-size:cover;
	position:relative;
	display:block;
	width:100%;
	padding-top:60%;
}
.mv_content .mv_outer .flex_outer .flex_box.instagram-standard span.image {
	background-image:url(/wp-content/uploads/基礎講義サムネ.jpg);
}
.mv_content .mv_outer .flex_outer .flex_box.instagram-special span.image {
	background-image:url(/wp-content/uploads/特別講義サムネ.jpg);
}
.mv_content .mv_outer .flex_outer .flex_box.member-benefits span.image {
	background-image:url(/wp-content/uploads/サムネ.jpg);
}
.mv_content .mv_outer .flex_outer .flex_box.live-archive span.image {
	background-image:url(/wp-content/uploads/サムネ-1.jpg);
}
.mv_content .mv_outer .flex_outer .flex_box.group-archive span.image {
	background-image:url(/wp-content/uploads/サムネ-2.jpg);
}
.mv_content .mv_outer .flex_outer .flex_box span.text {
	display:block;
	width:100%;
	padding:20px 5px;
	text-align:center;
}

.mv_content .mv_outer .list_box {
	border: solid 1px #000;
	padding: 20px 25px;
}
.mv_content .mv_outer .list_box li {
	padding: 10px 0 10px 35px;
	position: relative;
	list-style:none;
}
.mv_content .mv_outer .list_box li:before {
	content: "▼";
	display: block;
	background-color: #0078d7;
	color: #fff;
	position: absolute;
	padding: 4px 4px;
	transform: translateY(-50%) rotate(-90deg);
	top: 50%;
	left: 0;
	border-radius:3px;
}
.mv_content .mv_outer .list_box li a {
	line-height: 27px;
}
.mv_content .mv_outer.instagram-standard h1 {
	background-color:transparent;
	font-size:2em;
}
.mv_content .mv_outer.instagram-standard h2 {
	background-color:#1bbc0d;
	color:#fff;
}
.mv_content .mv_outer.mindset h2 {
	background-color:#25495b;
	color:#fff;
}


/* よくある質問 */
.qa-7 {
    max-width: 500px;
    margin-bottom: 10px;
    border: none;
    border-radius: 10px;
    box-shadow: 0 4px 4px rgb(0 0 0 / 20%), 0 2px 3px -2px rgba(0 0 0 / 5%);
/*    background-color: #fff9d7;*/
    background-color: #fff;
	border:solid 1px #ddd;
	margin: 20px auto;
}
.qa-outer {
	padding:0 5px;
}

.qa-7 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em 1em 3em;
    color: #333333;
    font-weight: 600;
    cursor: pointer;
}

.qa-7 summary::before,
.qa-7 p::before {
    position: absolute;
    left: 1em;
    font-weight: 600;
    font-size: 1.3em;
}

.qa-7 summary::before {
    color: #75bbff;
    content: "Q";
}

.qa-7 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 3px solid #333333b3;
    border-right: 3px solid #333333b3;
    content: '';
    transition: transform .5s;
	position:absolute;
	right:1.4em;
}

.qa-7[open] summary::after {
    transform: rotate(225deg);
}

.qa-7 p {
    position: relative;
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: .3em 3em 1.5em !important;
    color: #333;
    transition: transform .5s, opacity .5s;
}

.qa-7[open] p {
    transform: none;
    opacity: 1;
}

.qa-7 p::before {
    color: #ff8d8d;
    line-height: 1.2;
    content: "A";
}


/* ******************************************************************************************************************** */
/* ****************************************************** Index ******************************************************* */
/* ******************************************************************************************************************** */

:root {
	--column_color:#1562a8;
}

.takuto_column_outer h1.page-title {
	font-size: 3em;
	font-weight: bold;
	text-align: center;
	padding: 50px 5px 0;
	margin-bottom: 30px;
}
.takuto_column_outer h2.category_title {
	font-size: 1.6em;
	font-weight: bold;
	color: #999;
	text-align: center;
	margin-top: 30px;
}

article.takuto_column {
	padding:20px;
	margin:20px 0;
}

.takuto_column_outer.column_single h2.column_title,
.takuto_column h3 {
	background-color: var(--column_color);
	color:#fff;
	border-radius:50px;
	font-weight:bold;
	font-size:2em;
	padding:5px 20px;
	max-width:100%;
	margin-bottom:20px !important;
}
.takuto_column h3 a {
	text-decoration:none !important;
	color:inherit !important;
	transition:opacity 0.3s;
}
.takuto_column h3 a:hover {
	opacity:0.8;
}
.takuto_column div.entry-content {
	margin:0 0 15px
}
.takuto_column p {
	max-width: 100% !important;
	padding: 0 15px;
	position:relative;
}
.takuto_column p a.more-link {
	
}

ul.cat_list  {
	display: flex;
	justify-content:flex-end;
	flex-wrap:wrap;
	list-style: none;
	padding: 10px 5px 5px;
	border-top: solid 1px #ddd;
	margin: 0 10px;
}
ul.cat_list li {
	padding-right:10px;
}
ul.cat_list li a {
	text-decoration:none !important;
	display: inline-block;
	padding: 5px 10px;
	background: #aaa;
	color: #fff !important;
	border-radius: 30px;
	transition: all 0.3s;
}
ul.cat_list li a:focus,
ul.cat_list li a:hover {
	opacity:0.4;
	background-color:var(--column_color) !important;
}


.takuto_column_nav .nav-links {
	padding: 20px 90px;
	position: relative;
}
.takuto_column_nav .page-numbers {
	text-align:center;
	margin:0 5px !important;
}
.takuto_column_nav a {
	text-decoration:none !important;
}
.takuto_column_nav .navigation .nav-links .dots {
	min-width:auto;
	min-height:0;
	display:inline-block;
}
.takuto_column_nav .page-numbers:not(.dots, .prev, .next) {
	border:solid 1px  var(--column_color);
	padding: 10px 12px;
	min-width: auto;
	min-height:0;
	transition:all 0.3s;
	display:inline-block;
}
.takuto_column_nav .page-numbers:not(.dots, .prev, .next, .current):hover {
	background-color:var(--column_color) !important;
	color:#fff !important;
}
.takuto_column_nav .page-numbers.current:not(.dots, .prev, .next) {
	background-color: var(--column_color);
	color: #fff;
	text-decoration: none;
	opacity:0.4;
}
.takuto_column_nav .prev.page-numbers,
.takuto_column_nav .next.page-numbers {
	position: absolute;
	bottom:30px;
	font-size:1.3em;
	min-height:0;
}
.takuto_column_nav .prev.page-numbers {
	left: 0;
}
.takuto_column_nav .prev.page-numbers:before {
	content:"＜ 前へ"
}

.takuto_column_nav .next.page-numbers {
	right: 0;
}
.takuto_column_nav .next.page-numbers:before {
	content:"次へ ＞"
}
.takuto_column_nav .prev.page-numbers .svg-icon,
.takuto_column_nav .prev.page-numbers .nav-prev-text,
.takuto_column_nav .next.page-numbers .svg-icon,
.takuto_column_nav .next.page-numbers .nav-next-text {
	display:none !important;
}
@media (max-width:767px) {
	.takuto_column_nav .nav-links {
		justify-content:center;
		align-items:center;
		padding: 20px 10px 80px;
	}
	.takuto_column_nav .page-numbers:not(.prev, .next) {
		font-size:0.8em;
		padding: 10px 10px;
	}
	.takuto_column_nav .prev.page-numbers {
		left: auto;
		right: 50%;
		padding:5px 20px 5px 0;
		margin:0 !important;
		border-right:solid 1px #ccc;
	}
	.takuto_column_nav .next.page-numbers {
		right: auto;
		left: 50%;
		padding:5px 0 5px 20px;
		margin:0 !important;
		border-left:solid 1px #ccc;
	}
}

.site-main > article.column_article {
	margin-bottom:50px;
}
.takuto_column_outer.column_single {
	padding:0 10px;
}
.takuto_column_outer.column_single h2.column_title {
	margin-top:30px;
}
.takuto_column_outer.column_single .column_content > p {
	max-width:100%;
	padding:5px 15px 20px;
	overflow-wrap:break-word;
}
.takuto_column_outer.column_single ul.cat_list {
	justify-content:flex-start;
}

.site-main > article.column_article ~ .single_nav_outer {
	margin-top:20px;
}
.single_nav_outer .nav-links {
	display:flex;
	justify-content:space-between;
	position:relative;
	padding:0 20px;
}
.single_nav_outer .navigation.post-navigation {
	max-width:100%;
}
.single_nav_outer .nav-links .nav-previous{
	margin:0 auto 0 0;
}
.single_nav_outer .nav-links .nav-next {
	margin:0 0 0 auto;
}
.single_nav_outer .navigation .nav-links .nav-next a,
.single_nav_outer .navigation .nav-links .nav-previous a {
	background-color: var(--column_color) !important;
	color: #fff !important;
	font-weight:bold;
	padding: 5px 15px;
	border-radius: 40px;
	transition:all 0.3s;
	text-decoration:none !important;
}
.single_nav_outer .navigation .nav-links .nav-next a p,
.single_nav_outer .navigation .nav-links .nav-previous a p {
	color:inherit;
}
.single_nav_outer .navigation .nav-links .nav-next a:hover,
.single_nav_outer .navigation .nav-links .nav-previous a:hover {
	opacity:0.4;
}



.archive_title {
	max-width: 100% !important;
	background-color: #333;
	color: #fff;
	font-size: 3em;
	text-align: center;
	padding: 20px 10px;
}

.kakoi {
	margin: 0 20px;
	width: 100%;
}
.kakoi a {
	text-decoration:none;
}
.flex_youtube{
	display: flex;
	margin: 10px;
}
.youtube_title {
	margin: 10px 0;
	font-size: 1.32em;
	display: inline-block;
	text-decoration: none !important;
	line-height:1.4em;
	font-weight:bold;
}
.youtube_image {
	overflow:hidden;
	border-radius:10px;
	width:45%;
}
.youtube_image img {
	width:100%;
	height:100%;
	object-fit:cover;
	transition:all 0.3s;
}
.youtube_text {
	line-height:1.4em;
	padding-left:20px;
	width:55%;
}
@media (max-width:767px) {
	.archive_title {
		font-size:1.8em;
	}
	.kakoi {
		font-size:0.8em;
	}
	.youtube_image {
		border-radius:5px;
	}
	.youtube_title {
		margin:5px 0;
	}
	.youtube_text {
		padding-left:10px;
	}
}
.youtube_image:hover img {
	transform:scale(1.04);
	transform-origin:center;
	opacity:0.8;
}


/* *************************************** noneシリーズ *************************************** */
@media (min-width:980px){ .pc-none,.pctb-none{display:none;} }
@media (min-width:768px) and (max-width:979px){ .tb-none,.pctb-none,.tbsp-none{display:none;} }
@media (max-width:767px){ .sp-none,.tbsp-none{display:none;} }
.dummy {display:none;}




