@charset "UTF-8";
/*==============================================================================
1.共通事項
2.header
3.footer
4.共通パーツ
==============================================================================*/


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

	1.共通事項

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

:root {
	/* フォント */
	--font-base: "Noto Sans JP", sans-serif;
	--font-ver1: "Zen Kaku Gothic New", sans-serif;
	--font-ver2: "Zen Maru Gothic", sans-serif;
	--font-en: "Jost", sans-serif;
	/* カラー */
	--color-black: #3e3a39;
	--color-base: #c4993d;
	--color-gray: #f5f5f5;
	/* フォントサイズ */
	--fontsize-base: 1.4rem;
	/* フォントウェイト */
	--weight-thin: 100;
	--weight-extralight: 200;
	--weight-light: 300;
	--weight-regular: 400;
	--weight-medium: 500;
	--weight-semibold: 600;
	--weight-bold: 700;
	--weight-extrabold: 800;
	--weight-black: 900;
}

html {
	font-size: 10px;
}

#bodywrap{
	overflow: hidden;
}

body{
	min-width: 1400px;
	font-weight: 400;
	font-size: var(--fontsize-base);
	font-family: var(--font-base);
	color: var(--color-black);
	letter-spacing: 0.15em;
}
.inner{
	margin: 0 auto;
	width: 980px;
}
a{
	font-family: var(--font-base);
	color: var(--color-base);
	text-decoration: none;
	transition: 500ms;
}
a:hover{
	opacity: 0.6;
}

/*============ フォント ============*/
[lang="en"] {
	font-family: var(--font-en);
}

@font-face {
  font-family: 'icomoon';
  src:  url('../fonts/icomoon.eot?dty56d');
  src:  url('../fonts/icomoon.eot?dty56d#iefix') format('embedded-opentype'),
	url('../fonts/icomoon.ttf?dty56d') format('truetype'),
	url('../fonts/icomoon.woff?dty56d') format('woff'),
	url('../fonts/icomoon.svg?dty56d#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-arrow-right:before {
  content: "\edbe";
}
.icon-arrow-left:before {
  content: "\edc6";
}

/*============ disc_list ============*/
ul.disc_list li{
	position: relative;
	padding-left: 1em;
}
ul.disc_list li::before{
	content: "";
	width: 0.3em;
	height: 0.3em;
	position: absolute;
	left: 0;
	top: 0.8em;
	background-color: #3E3A39;
	border-radius: 100%;
}

/*============ ボタン ============*/
.btn_wrap{
	text-align: center;
}
.btn_wrap a,
.btn_wrap span{
	width: 320px;
	padding: 20px 0 22px;
	display: inline-block;
	border: 1px solid #c4993d;
	text-align: center;
	font-size: 1.5rem;
	color: #c4993d;
	line-height: 1;
	border-radius: 50px;
	position: relative;
	transition: 500ms;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	opacity: 1;
}
.btn_wrap a::after,
.btn_wrap span::after{
	width: 15px;
	height: 10px;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	content: "";
	background-image: url(../a_images/btn_wrap_arrow.svg);
	background-size: cover;
}
.btn_wrap a:hover,
.btn_wrap span:hover{
	opacity: 0.6;
}
/* ボタンgold */
.btn_wrap.gold a{
	background-color: #c4993d;
	border-color:#c4993d;
	color: #fff;
}
.btn_wrap.gold a::after{
	background-image: url(../a_images/btn_wrap_arrow_white.svg);
}
/* ボタン白 */
.btn_wrap.white a{
	background-color: #fff;
	color: var(--color-base);
}
/* ボタン黒 */
.btn_wrap.black a,
.btn_wrap.black span{
	background-color:#3e3a39;
	border-color: #3e3a39;
	color: #fff;
}
.btn_wrap.black a::after,
.btn_wrap.black span::after{
	background-image: url(../a_images/btn_wrap_arrow_white.svg);
}
/* ボタンmore ver */
.btn_wrap.more a::after{
	margin-top: -5px;
	width: 13px;
	height: 13px;
	right: 30px;
	border-right: 1px solid var(--color-base);
	border-bottom: 1px solid var(--color-base);
	transform: rotate(45deg) translateY(-50%);
	background: none;
	transition: 500ms;
}
.btn_wrap.more.gold a::after{
	border-color: #fff;
}
.btn_wrap.more.on a::after{
	margin-top: -13px;
    transform: rotate(225deg) translateY(-50%) translateX(-10px); /* ▲（上向きの山） */
}

/* ボタン window ver */
.btn_wrap.window a::after{
	width: 10px;
	background-image: url(../a_images/icon_window.svg);
}
/* ボタン window-white ver */
.btn_wrap.window-white a::after{
	width: 10px;
	background-image: url(../a_images/icon_window_white.svg);
}
/* ボタン黒 window ver */
.btn_wrap.black.window a::after{
	background-image: url(../a_images/icon_window_white.svg);
}
/* ボタン 左向き */
.btn_wrap.left a::after{
	right: unset;
	left: 20px;
	background-image: url(../a_images/btn_wrap_arrow_left.svg);
}
/* ボタン 左向き gold */
.btn_wrap.left.gold a::after{
	background-image: url(../a_images/btn_wrap_arrow_left_white.svg);
}
/* ボタン リンクなし ver */
.btn_wrap.no_link a,
.btn_wrap.no_link span{
	pointer-events: none;
}
.btn_wrap.no_link a::after,
.btn_wrap.no_link span::after{
	content: none;
}

@media all and (max-width: 768px){
	.btn_wrap a,
	.btn_wrap span{
		padding: 10px 0 12px;
		line-height: 1.6;
	}
}

/*============ リンク丸に矢印 ============*/
/* ゴールド */
.link_arrow_gold{
	padding-right: 30px;
	display: inline-block;
	position: relative;
}
.link_arrow_gold::after{
	content:"";
	width: 10px;
	height: 6px;
	display: block;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	border: 1px solid #C4993D;
	border-radius: 100%;
	background-image: url(../a_images/btn_wrap_arrow.svg);
	background-size: 80% auto;
	background-position: center;
	background-repeat: no-repeat;
	transition: 500ms;
}
.link_arrow_gold:hover::after{
	background-color: #C4993D;
	background-image: url(../a_images/btn_wrap_arrow_white.svg);
}
/* シルバー */
.link_arrow_silver{
	padding-right: 30px;
	display: inline-block;
	position: relative;
}
.link_arrow_silver::after{
	content:"";
	width: 20px;
	height: 20px;
	display: block;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	border: 1px solid #BCB9B0;
	border-radius: 100%;
	background-image: url(../1_img/base/btn_wrap_arrow_silver.svg);
	background-size: 7px;
	background-position: center;
	background-repeat: no-repeat;
	transition: 500ms;
}
.link_arrow_silver:hover{
	color: #BCB9B0;
}
.link_arrow_silver:hover::after{
	background-color: #BCB9B0;
	background-image: url(../1_img/base/btn_wrap_arrow_white.svg);
}

/*================================    clearfix   ================================*/
.clearfix::after {
	content: "";
	display: block;
	clear: both;
	}

/*================================    表示・非表示   ================================*/
@media all and (min-width: 769px){
	.sp_only{
		display: none!important;
	}
}
@media all and (max-width: 768px){
	.pc_only{
		display: none;
	}
}

/*================================    スマホ   ================================*/
@media all and (max-width: 768px){
	body{
		min-width: auto;
	}
	.inner{
		margin: auto;
		padding: 0 20px;
		width: auto;
	}
	.btn_wrap a{
		width: 100%;
		font-size: 1.4rem;
	}
	.btn2_wrap a{
		width: 100%;
		font-size: 1.5rem;
	}
}

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

	2.header

==============================================================================================================================================================
============================================================================================================================================================*/
@media all and (min-width: 769px){
	header{
		width: 100%;
		position: fixed;
		top: 30px;
		left: 0;
		z-index: 9999;
	}
	header .header_inner{
		margin: auto;
		width: 1400px;
		max-width: 100%;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	/*================================  ロゴ  ================================*/
	header .logo{
		width: 165px;
		line-height: 1;
	}
	header .logo a{
		display: flex;
		align-items: center;
	}
	header .logo img{
		width: 100%;
		transition: 500ms;
	}
	/*============ nav ============*/
	header nav{
		height: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	header nav > ul{
		margin: 0;
		display: flex;
		height: 100%;
		justify-content: center;
		align-items: center;
		position: relative;
	}
	header nav > ul + ul{
		margin-left: 15px;
	}
	header nav > ul > li > a{
		text-decoration: none;
		font-family: var(--font-ver1);
		font-weight: var(--weight-bold);
		color: var(--color-black);
	}
	/* global_nav */
	header nav > ul.global_nav{
		padding: 25px 35px 18px;
		background-color: #fff;
		border-radius: 40px;
		transition: 500ms;
		box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1);
	}
	header nav > ul.global_nav > li{
		padding-bottom: 5px;
		position: relative;
	}
	header nav > ul.global_nav > li + li{
		margin-left: 30px;
	}
	header nav > ul.global_nav > li.on > a{
		color: var(--color-base);
	}
	/* global_nav の sub_menu */
	header nav > ul.global_nav > li .sub_menu{
		padding: 10px;
		top: 100%;
		position: absolute;
		white-space: nowrap;
		background-color: #BCB9B0;
		border-radius: 5px;
		transform: translateY(-5%);
		opacity: 0;
		pointer-events: none;
		transition: 500ms;
	}
	header nav > ul.global_nav > li:hover .sub_menu{
		pointer-events: all;
		transform: translateY(0%);
		opacity: 1;
	}
	header nav > ul.global_nav > li .sub_menu li a{
		color: #fff;
	}
	/* mypage_nav */
	header nav > ul.mypage_nav li + li{
		margin-left: 15px;
	}
	header nav > ul.mypage_nav li a{
		padding: 25px 35px 23px;
		color: #fff;
		background-color: var(--color-base);
		border-radius: 40px;
		transition: 500ms;
		box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.1);
	}
}

/*================================   1400未満   ================================*/
@media all and (min-width: 1125px) and (max-width: 1400px){
	header {
		top: 20px;
	}
	header .header_inner{
		padding: 0 10px;
	}
	header nav > ul li {
		font-size: 1.2rem;
	}
	/* global_nav */
	header nav {
		margin-left: 10px;
	}
	header nav > ul.global_nav{
		padding: 20px 20px 15px;
	}
	header nav > ul.mypage_nav > li > a{
		padding: 20px;
	}
	header nav > ul.global_nav > li + li{
		margin-left: 15px;
	}
	header nav > ul + ul{
		margin-left: 10px;
	}
	/* global_nav の sub_menu */
	header nav > ul.global_nav > li .sub_menu{
		padding: 8px 10px;
	}
	header nav > ul.mypage_nav > li + li{
		margin-left: 10px;
	}
}
@media all and (min-width: 769px) and (max-width: 1124px){
	header {
		top: 15px;
	}
	header .header_inner{
		padding: 0 10px;
	}
	header .logo{
		width: 80px;
	}
	header nav > ul li {
		font-size: 1rem;
		letter-spacing: 0.1em;
	}
	/* global_nav */
	header nav {
		margin-left: 10px;
	}
	header nav > ul.global_nav{
		padding: 10px 15px 7px;
	}
	header nav > ul.global_nav > li{
		padding-bottom: 3px;
	}
	header nav > ul.mypage_nav li a{
		padding: 10px 10px;
	}

	header nav > ul.global_nav li + li{
		margin-left: 10px;
	}
	header nav > ul + ul{
		margin-left: 5px;
	}
	/* global_nav の sub_menu */
	header nav > ul.global_nav > li .sub_menu{
		padding: 5px 8px;
	}
	header nav > ul.mypage_nav li + li{
		margin-left: 5px;
	}
}

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

	header スマホ

==============================================================================*/
@media all and (max-width: 768px){
	header{
		width: 100%;
		position: fixed;
		left: 0;
		top: 0;
		z-index: 99999;
	}
	header .header_inner{
		padding: 0 60px 0 20px;
		display: flex;
	}
	/* ロゴ */
	header .logo{
		padding-top: 12px;
		height: 100%;
		display: flex;
		align-content: center;
		align-items: center;
		position: relative;
		z-index: 9999;
	}
	header .logo a {
		display: block;
		height: 100%;
		line-height: 1;
	}
	header .logo img{
		width: auto;
		height: 100%;
		vertical-align: top;
		transition: 500ms;
	}
	.menu_open header .logo a {
		background: url(../a_images/logo_white.svg) no-repeat center / cover;
	}
	.menu_open header .logo img{
		opacity: 0;
	}
	/*============= nav ==============*/
	header nav{
		padding: 90px 40px 20px;
		width: 100%;
		height: calc(100dvh);
		position: fixed;
		left: 0;
		top: 0px;
		z-index: 9998;
		background: var(--color-base);
		opacity: 0;
		pointer-events: none;
		transition: opacity 500ms;
		overflow: scroll;
	}
	.menu_open header nav{
		opacity: 1;
		pointer-events: auto;
	}
	header nav a{
		color: #fff;
		font-weight: var(--weight-bold);
		font-size: 1.6rem;
	}
	header nav ul{
		display: flex;
		flex-wrap: wrap;
		gap: 30px 0;
	}
	header nav > ul > li{
		width: 50%;
	}
	/* global_nav */
	header nav ul.global_nav {
		margin-top: 30px;
	}
	/* sub_menu */
	header nav ul.sub_menu{
		margin-top: 5px;
	}
	header nav ul.sub_menu li a {
		font-size: 1.3rem;
	}
	/* mypage_nav */
	header nav ul.mypage_nav {
		margin-top: 30px;
	}
	/* privacy_nav */
	header nav ul.privacy_nav {
		margin-top: 30px;
		padding-top: 30px;
		border-top: 1px solid #fff;
		gap: 7px 0;
	}
	header nav ul.privacy_nav a{
		font-size: 1rem;
	}


	/*============= スマホバーガーメニュー ==============*/
	header #sp_menu_btn{
		width: 60px;
		height: 60px;
		position: fixed;
		right: 0;
		top: 0;
		z-index: 99999;
		cursor: pointer;
		background-color: var(--color-base);
	} 
	/*ボタン内側*/
	header #sp_menu_btn span{
		width: 30px;
		display: inline-block;
		transition: all .4s;
		left: 15px;
		position: absolute;
		height: 2px;
		border-radius: 2px;
		background: #fff;
	} 
	header #sp_menu_btn span:nth-of-type(1) {
		top: 20px;	
	}  
	header #sp_menu_btn span:nth-of-type(2) {
		margin-top: -1px;
		top:50%;
	}  
	header #sp_menu_btn span:nth-of-type(3) {
		bottom:20px;
	}
	
	/*activeクラスが付与されると線が回転して×に*/
	.menu_open header #sp_menu_btn span:nth-of-type(1) {
		transform: translateY(6px) rotate(-30deg);
	}
	.menu_open header #sp_menu_btn span:nth-of-type(2) {
		opacity: 0;/*真ん中の線は透過*/
	}
	.menu_open header #sp_menu_btn span:nth-of-type(3){
		bottom: 25px;
		transform: translateY(-6px) rotate(30deg);
	}

	/*============= お問合せはこちら ==============*/
	.fix_contact{
		padding: 18px 0;
		width: 100%;
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: 9999;
		font-size: 1.6rem;
		text-align: center;
		color: #fff;
		font-weight: var(--weight-bold);
		background-color: var(--color-base);
	}
	.fix_contact  span{
		padding: 0 50px;
		display: inline-block;
		position: relative;
	}
	.fix_contact  span::after{
		content: "";
		width: 30px;
		height: 20px;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%);
		background: url(../a_images/btn_wrap_arrow_white.svg) center / cover;
	}
}


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

	3.footer

==============================================================================================================================================================
============================================================================================================================================================*/
footer{
	padding-top: 70px;
	padding-bottom: 80px;
}
footer .inner{
	width: 1200px;
}
/*================================   logo   ================================*/
footer .logo{
	position: relative;
}
footer .logo a{
	transition: opacity 500ms;
}
footer .logo h2 {
	text-align: left;
}
footer .logo h2 a img{
	width: 257px;
}
footer .logo a:hover{
	opacity: 0.6;
}
footer .logo .pagetop{
	position: absolute;
	top: 15px;
	right: 0;
}
/*================================   menu   ================================*/
footer .menu{
	margin-top: 40px;
	margin-bottom: 40px;
	border-top: 1px solid #BCB9B0;
	border-bottom: 1px solid #BCB9B0;
	padding: 15px 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
/*左側 menuリスト */
footer .menu .list{
	display: flex;
	flex-wrap: wrap;
	width: 360px;
	gap: 20px 0;
}
footer .menu .list li{
	width: 50%;
	line-height: 1;
}
footer .menu .list li a{
	font-size: 1.3rem;
	color: var(--color-black);
}
/* 左側 menu list_mini */
footer .menu .list_mini{
	margin-top: 25px;
	width: 300px;
	display: flex;
	flex-wrap: wrap;
	gap: 16px 12px;
	padding: 0;
	list-style: none;
}
footer .menu .list_mini li{
	max-width: calc((100% - 30px) / 3);
	white-space: nowrap;
    line-height: 1;
}
footer .menu .list_mini li a{
	font-size: 1rem;
	color: var(--color-black);
}
/*右側 別ページリンク */
footer .menu .link a{
	width: 410px;
	display: block;
}
footer .menu .link a + a{
	margin-top: 15px;
	padding-top: 15px;
	border-top: 1px solid #BCB9B0;
}
footer .menu .link a dl{
	display: block;
}
footer .menu .link .link_arrow_gold {
	padding-right: 60px;
}
footer .menu .link .link_arrow_gold::after {
	width: 25px;
	height: 25px;
	right: 20px;
	background-size: 10px auto;
}
footer .menu .link a dl:before {
	content: "";
	width: 46px;
	height: 38px;
	position: absolute;
	top: 50%;
	left: 30px;
	transform: translateY(-50%);
}
footer .menu .link a dl.company:before {
	background: url(../a_images/icon_magichands_company.svg) no-repeat center / 100% auto;
}
footer .menu .link a dl.therapist:before {
	background: url(../a_images/icon_magichands_therapist.svg) no-repeat center / 100% auto;
}
footer .menu .link a dt{
	font-size: 1.6rem;
}
footer .menu .link a dd{
	margin-top: 10px;
	font-size: 1.1rem;
	color: var(--color-black);
}
/*================================   address   ================================*/
footer address{
	display: flex;
	justify-content: space-between;
	font-size: 1.2rem;
	line-height: 1.8;
	float: left;
}
/*================================   sns   ================================*/
footer .sns{
	float: right;
}
footer .sns ul{
	display: flex;
	align-items: center;
	gap: 0 30px;
}
/*================================   copyright   ================================*/
footer #copyright{
	clear: both;
	padding-top: 50px;
	text-align: left;
	font-size: 1rem;
}
/*==============================================================================

	footer スマホ

==============================================================================*/
@media all and (max-width: 768px){
	footer{
		padding-top: 40px;
		padding-bottom: 100px;
	}
	footer .inner{
		width: 100%;
        display: flex;
        flex-wrap: wrap;
	}
	/*================================   logo   ================================*/
	footer .logo{
		padding-top: 60px;
		width: 100%;
		text-align: center;
	}
	footer .logo h2 {
		text-align: center;
	}	
	footer .logo .pagetop{
		position: absolute;
		top: 0px;
		left: 50%;
		transform: translateX(-50%);
		right: unset;
	}
	/*================================   menu   ================================*/
	footer .menu{
		margin-top: 25px;
		padding-top: 30px;
		width: 100%;
		display: block;
	}
	/*========== list_wrap ==========*/
	footer .menu .list_wrap{
		padding: 0 20px;
	}
	/* top */
	footer .menu .list_wrap .top a{
		color: var(--color-black);
	}
	/* menu list */
	footer .menu .list{
		margin-top: 0px;
		width: 100%;
	}
	/* menu list_mini */
	footer .menu .list_mini{
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		gap: 10px 12px;
	}
	footer .menu .list_mini li{
		width: calc(50% - 6px);
		max-width: 50%;
	}
	footer .menu .list_mini li:last-child{
		width: 100%;
	}
	footer .menu .list_mini li a{
		font-size: 1rem;
		color: var(--color-black);
	}
	/* 別ページリンク */
	footer .menu .link a + a,
	footer .menu .link a{
		margin-top: 25px;
		padding-top: 25px;
		padding-left: 20px;
		width: 100%;
		font-size: 1.6rem;
		border-top: 1px solid #BCB9B0;
	}
	footer .menu .link a dl{
		display: block;
	}
	footer .menu .link .link_arrow_gold {
		padding-right: 60px;
	}
	footer .menu .link .link_arrow_gold::after {
		width: 25px;
		height: 25px;
		right: 0px;
		background-size: 7px;
	}
	footer .menu .link a dl.company:before,
	footer .menu .link a dl.therapist:before {
		left: 0px;
	}
	/*================================   address   ================================*/
	footer address{
		width: 100%;
		display: block;
		font-size: 1.2rem;
		line-height: 1.8;
		text-align: center;
	}
	/*================================   sns   ================================*/
	footer .sns{
		margin-top: 20px;
		float: none;
		width: 100%;
	}
	footer .sns ul{
		width: 100%;
		justify-content: center;
		gap: 0 20px;
	}
	footer .sns ul li span{
		display: inline-block;
		vertical-align: middle;
	}
	/*================================   copyright   ================================*/
	footer #copyright{
		padding-top: 30px;
		width: 100%;
		text-align: center;
	}
}



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

	4.共通パーツ

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

/*================================   下層のh1   ================================*/
.under_layer .h1{
	height: 400px;
	display: flex;
	position: relative;
	align-items: center;
	justify-content: center;
	background-size: cover;
	background-position: center;
	background-color: #BCB9B0;
	background-image: url(../a_images/title.jpg);
}
.under_layer .h1 span{
	margin-top: 20px;
	text-align: center;
}
.under_layer .h1 span span{
	display: block;
}
.under_layer .h1 span span[lang="ja"]{
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 2.8rem;
	color: #fff;
	letter-spacing: 0.2em;
}
.under_layer .h1 span span[lang="en"]{
	margin-top: 20px;
	font-weight: var(--weight-medium);
	font-size: 1.8rem;
	color: var(--color-base);
}
.under_layer .h1::before {
		content: "";
		width: 100%;
		height: 233px;
		position: absolute;
		background: url(../a_images/wave_gray_line.svg) repeat-x  top center;
		left: 0;
		bottom: 0;
		pointer-events: none;
}

/*================================   h2   ================================*/
.title_h2{
	text-align: center;
}
.title_h2 [lang="en"]{
	text-align: center;
	font-size: 9rem;
	line-height: 1;
}
.title_h2 [lang="en"] > span{
	display: inline-block;
	letter-spacing: 0.2em;
	position: relative;
	z-index: 1;
}
.title_h2 [lang="en"] > span::before {
	content: attr(data-text);
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	color: var(--color-base);
	-webkit-text-stroke: 3px var(--color-base);
	mix-blend-mode: multiply;
	text-shadow: -2px 3px 0px var(--color-base);
}
.title_h2 p{
	margin-top: 20px;
	font-size: 2.2rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
.title_h2.white [lang="en"] > span::before {
	color: #fff;
	-webkit-text-stroke: 3px #fff;
	text-shadow: -2px 3px 0px #fff;
}
.title_h2.white p{
	color: #fff;
}
/*========== 装飾 ==========*/
.title_h2 [lang="en"] .deco{
	display: inline-block;
	position: relative;
}
.title_h2 [lang="en"] .deco::before,
.title_h2 [lang="en"] .deco::after{
	content: "";
	position: absolute;
	background-size: cover;
}
.title_h2 [lang="en"] .deco::before{
	width: 30px;
	height: 40px;
	left: -30px;
	top: -27px;
	background-image: url(../a_images/h2_deco_gold_left.svg);
}
.title_h2 [lang="en"] .deco::after{
	width: 30px;
	height: 38px;
	right: -30px;
	bottom: -12px;
	background-image: url(../a_images/h2_deco_gold_right.svg);
}
.title_h2 [lang="en"] .deco.white::before{
	background-image: url(../a_images/h2_deco_white_left.svg);
}
.title_h2 [lang="en"] .deco.white::after{
	background-image: url(../a_images/h2_deco_white_right.svg);
}


/*================================   パンクズ   ================================*/
.pankuzu ul{
	margin: 0 auto;
	width: 1200px;
	display: flex;
	flex-wrap: wrap;
}
.pankuzu ul li{
	font-size: 1rem;
}
.pankuzu ul li + li{
	margin-left: 13px;
	padding-left: 20px;
	position: relative;
}
.pankuzu ul li + li::before{
	content:"＞";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	color: #BCB9B0;
	line-height: 1;
}


/*================================   吹き出し   ================================*/
.fukidashi_wrap span{
	padding: 0 17px;
	display: inline-block;
	position: relative;
	font-family: var(--font-ver2);
	font-weight: var(--weight-bold);
	font-size: 1.8rem;
}
.fukidashi_wrap span::before,
.fukidashi_wrap span::after{
	margin-top: 2px;
	content:"";
	width: 2px;
	height: 15px;
	position: absolute;
	top: 50%;
	background-color: var(--color-base);
	border-radius: 5px;
}
.fukidashi_wrap span::before{
	left: 0;
	transform: translateY(-50%) rotate(-25deg);
}
.fukidashi_wrap span::after{
	right: 0;
	transform: translateY(-50%) rotate(25deg);
}
.fukidashi_wrap.white span::before,
.fukidashi_wrap.white span::after{
	background-color: #fff;
}

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

	下層 スマホ

==============================================================================*/
@media all and (max-width: 768px){
	/*================================   下層のh1   ================================*/
	.under_layer .h1{
		height: 260px;
	}
	.under_layer .h1 span{
		margin-top: -10px;
	}
	.under_layer .h1 span span[lang="ja"]{
		font-size: 2.3rem;
	}
	.under_layer .h1 span span[lang="en"]{
		margin-top: 12px;
		font-size: 1.3rem;
	}
	.under_layer .h1::before {
		height: 122px;
		position: absolute;
		background: url(../a_images/sp_wave_gray_line.svg) repeat-x top left calc(50% + 110px);
		bottom: -1px;
	}

	/*================================   h2   ================================*/
	.title_h2 [lang="en"]{
		font-size: 4.5rem;
	}
	.title_h2 p{
		margin-top: 20px;
		font-size: 1.5rem;
	}
	/*========== 装飾 ==========*/
	.title_h2 [lang="en"] .deco::after{
		width: 29px;
		height: 39px;
		right: -22px;
		top: -22px;
		bottom: unset;
		background-image: url(../a_images/sp_h2_deco_gold_right.svg);
	}
	.title_h2 [lang="en"] .deco.white::after{
		background-image: url(../a_images/sp_h2_deco_white_right.svg);
	}
	/*================================   吹き出し   ================================*/
	.fukidashi_wrap span{
		padding: 0 15px;
		font-size: 1.4rem;
	}
	.fukidashi_wrap span::before,
	.fukidashi_wrap span::after{
		height: 13px;
	}

	/*================================   パンクズ   ================================*/
	.pankuzu ul{
		padding: 20px 20px 0;
		width: 100%;
	}
}













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

	top

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

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

	1.ファーストビュー

==============================================================================================================================================================
============================================================================================================================================================*/
#first_view{
	height: 800px;
	background: url(../a_images/top/firstvew.jpg) top center / cover;
	position: relative;
}
#first_view::after{
	content: "";
	width: 100%;
	height: 233px;
	position: absolute;
	background: url(../a_images/wave_gray_line.svg) repeat-x  top center;
	left: 0;
	bottom: 0;
}
#first_view .inner{
	width: 1400px;
	height: 100%;
	position: relative;
}
#first_view p{
	position: absolute;
	left: 0;
	bottom: 250px;
	font-size: 2.8rem;
	line-height: 6.5rem;
    letter-spacing: 0.2em;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	color: #fff;
	z-index: 2;
}
#first_view p span{
	padding-bottom: 10px;
	border-bottom: 1px solid #fff;
}
#first_view .inner::after{ /* 紙飛行機の飾り */
	content: "";
	width: 640px;
	height: 759px;
	position: absolute;
	right: -277px;
	bottom: -118px;
	background: url(../a_images/top/firstvew_deco.svg) no-repeat center / cover;
	z-index: 2;
}
#first_view .movie{
	padding: 10px 20px 10px 90px;
	display: inline-block;
	position: fixed;
	bottom: 60px;
	right: 0;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 2.2rem;
	color: #fff;
	text-align: center;
	background: 
	url(../a_images/icon_movie.svg) no-repeat left 15px center / 56px auto,
	#4f700f;
	z-index: 4;
	box-shadow: 7px 7px 0px 0px rgba(0, 0, 0, 0.1);
}

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

	ファーストビュー スマホ

==============================================================================*/
@media all and (max-width: 768px) {
	#first_view{
		height: calc(100svh - 80px);
	}
	#first_view::after{
		height: 122px;
		background: url(../a_images/sp_wave_gray_line.svg) repeat-x  top left calc(50% + 110px);
		bottom: -1px;
	}
	#first_view .inner{
		width: 100%;
	}
	#first_view p{
		position: absolute;
		left: 20px;
		top: 50%;
		transform: translateY(-50%);
		font-size: 1.8rem;
		line-height: 3.5rem;
	}
	#first_view p span{
		padding-bottom: 5px;
	}
	#first_view .inner::after{ /* 紙飛行機の飾り */
		width: 111px;
		height: 100px;
		right: -30px;
		top: 30%;
		background: url(../a_images/top/sp_firstvew_deco.svg) no-repeat center / cover;
	}
	#first_view .movie{
		padding: 10px 10px 10px 45px;
		bottom: 70px;
		font-size: 1rem;
		background: 
		url(../a_images/icon_movie.svg) no-repeat left 10px center / 28px auto,
		#4f700f;
	}
}




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

	2.news

==============================================================================================================================================================
============================================================================================================================================================*/
#news{
	padding-top: 100px;
	background-color: var(--color-gray);
}
#news .inner{
	display: flex;
	align-items: center;
	font-size: 3.2rem;
}
/*================================  タイトル  ================================*/
#news .inner .title{
	width: calc(4em + 40px);
}
#news .inner .title h2{
	font-size: 3.2rem;
	color: var(--color-base);
	letter-spacing: 0.2em;
	line-height: 1;
}
#news .inner .title .btn_wrap{
	width: 3.5em;
}
#news .inner .title .btn_wrap a{
	padding: 4px;
	width: 100%;
	font-size: 1.1rem;
	font-family: var(--font-ver1);
}
#news .inner .title .btn_wrap a::after{
	width: 10px;
	height: 7px;
	right: 10px;
}
/*================================  記事一覧  ================================*/
#news .inner ul{
	padding: 5px 0 5px 40px;
	border-left: 1px solid var(--color-base);
	width: calc(100% - 4em - 40px);
}
#news .inner ul li + li{
	margin-top: 10px;
}
#news .inner ul li a{
	font-size: 1.4rem;
	display: flex;
	position: relative;
	padding-right: 26px;
}
#news .inner ul li a::after{/* テキスト */
	content:"";
	width: 11px;
	height: 11px;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	background: url(../a_images/top/news_arrow.svg) no-repeat center / cover;
}
#news .inner ul li a .text{
	padding-left: 20px;
	display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}
/*==============================================================================

	news スマホ

==============================================================================*/
@media all and (max-width: 768px) {
	#news {
		padding-top: 50px;
	}
	#news .inner{
		display: block;
		font-size: 2.4rem;
	}
	/*================================  タイトル  ================================*/
	#news .inner .title{
		width: 100%;
		text-align: center;
	}
	#news .inner .title h2{
		padding-bottom: 5px;
		font-size: 2.4rem;
		display: inline-block;
		border-bottom: 2px solid var(--color-base);
	}
	/*================================  記事一覧  ================================*/
	#news .inner ul{
		margin-top: 20px;
		padding: 0 20px;
		border-left: none;
		width: calc(100%);
	}
	#news .inner ul li + li{
		margin-top: 15px;
		padding-top: 15px;
		border-top: 1px solid var(--color-base);
	}
	#news .inner ul li a{
		font-size: 1.4rem;
		display: block;
		position: relative;
		padding-right: 0;
	}
	#news .inner ul li a::after{
		content: none;
	}
	#news .inner ul li a .text{
		margin-top: 10px;
		font-size: 1.3rem;
		padding-left: 0px;
		-webkit-line-clamp: 2;
		line-height: 2;
	}
	#news .inner .btn_wrap {
		margin-top: 30px;
	}
	#news .inner .btn_wrap a{
		width: 240px;
		font-size: 1.1rem;
		font-family: var(--font-ver1);
	}
}


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

	3.concept

==============================================================================================================================================================
============================================================================================================================================================*/
#concept{
	padding: 180px 0 250px;
	background-color: var(--color-gray);
}
/*================================  h2  ================================*/
#concept h2{
	color: var(--color-gray);
}
#concept .title_h2 p{
	color: var(--color-base);
}
/*================================  intro  ================================*/
#concept .intro{
	margin-top: 60px;
	text-align: center;
	position: relative;
	z-index: 3;
}
#concept .intro .fukidashi_wrap{
	color: var(--color-base);
}
#concept .intro .fukidashi_wrap{
	color: var(--color-base);
}
#concept .intro dl{
	margin-top: 25px;
}
#concept .intro dl dt{
	color: var(--color-base);
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 2.8rem;
	letter-spacing: 0.2em;
	line-height: 1.8;
}
#concept .intro dl dd{
	margin-top: 40px;
	line-height: 2;
}
#concept .intro dl dd em{
    background-image: linear-gradient(transparent 60%, rgba(196, 153, 61, 0.3) 70%)
}
#concept .intro .btn_wrap{
	margin-top: 65px;
}
/*================================  装飾  ================================*/
#concept .inner{
	position: relative;
}
#concept .inner::before,
#concept .inner::after{
	content:"";
	position: absolute;
	z-index: 2;
	background-size: cover;
}
#top #concept .inner::before{
	width: 360px;
	height: 722px;
	left: -175px;
	bottom: -160px;
	background-image: url(../a_images/top/concept_deco_left.png);
}
#top #concept .inner::after{
	width: 400px;
	height: 766px;
	right: -240px;
	top: -120px;
	background-image: url(../a_images/top/concept_deco_right.png);
}
/*==============================================================================

	concept スマホ

==============================================================================*/
@media all and (max-width: 768px) {
	#top #concept{
		padding: 45px 0 140px;
	}
	/*================================  intro  ================================*/
	#top #concept .intro dl{
		margin-top: 15px;
	}
	#top #concept .intro dl dt{
		font-size: 1.8rem;
		letter-spacing: 0.15em;
	}
	#top #concept .intro .btn_wrap{
		margin-top: 20px;
	}
	#top #concept .intro .btn_wrap a{
		width: 240px;
	}
	#top #concept .inner::before{
		content: none;
	}
	#top #concept .inner::after{
		width: 90px;
		height: 122px;
		right: 10px;
		top: unset;
		bottom: -90px;
		background-image: url(../a_images/top/concept_deco_sp.svg);
		background-size: 90px auto;
	}
}

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

	4.seminar

==============================================================================================================================================================
============================================================================================================================================================*/
#seminar{
	padding-top: 160px;
	position: relative;
	background-color: var(--color-base);
}
#seminar::before{
	content: "";
    width: 100%;
    height: 233px;
    position: absolute;
	background: url(../a_images/wave_gold.svg) repeat-x  top center;
    left: 0;
    bottom: 100%;
}
/*================================  h2  ================================*/
#seminar h2{
	color: var(--color-base);
}
/*================================  intro  ================================*/
#seminar .intro{
	margin-top: 120px;
}
#seminar .intro .inner{
	display: flex;
	position: relative;
	justify-content: center;
	background: url(../a_images/top/seminar_cross.svg) no-repeat center;
}
/*============ deco ============*/
#seminar .intro .inner::before,
#seminar .intro .inner::after{
	content:"";
	position: absolute;
}
#seminar .intro .inner::before{
	width: 170px;
	height: 218px;
	top: 166px;
	left: -230px;
	background-image: url(../a_images/top/seminar_intro_deco_left.svg);
}
#seminar .intro .inner::after{
	width: 312px;
	height: 234px;
	top: -131px;
	right: -222px;
	background-image: url(../a_images/top/seminar_intro_deco_right.svg);
}
#seminar .intro .inner > div{
	margin: 0 85px;
	padding-top: 113px;
	width: 272px;
	height: 272px;
	position: relative;
	border-radius: 100%;
	background-color: #fff;
	text-align: center;
}
#seminar .intro .fukidashi_wrap{
	margin-bottom: 10px;
	width: 100%;
	bottom: 100%;
	position: absolute;
	color: #fff;
}
/*============ h3 ============*/
#seminar .intro h3{
	width: calc(100% + 8px);
	position: absolute;
	top: 35px;
	left: -4px;
	font-family: var(--font-ver1);
	font-size: 2.4rem;
	font-weight: var(--weight-bold);
	color: #fff;
}
#seminar .intro .inner > div:nth-of-type(1) h3{
	background-color: #bcb9b0;
}
#seminar .intro .inner > div:nth-of-type(2) h3{
	background-color: #ae8d56;
}
#seminar .intro .inner h3 span{
	padding: 10px 0;
	display: block;
	position: relative;
}
/* 飾り */
#seminar .intro h3::before,
#seminar .intro h3::after,
#seminar .intro h3 span::before,
#seminar .intro h3 span::after{
	content: "";
	position: absolute;
}
/* リボン大 */
#seminar .intro h3::before,
#seminar .intro h3::after{
	width: 20px;
	height: 40px;
	bottom: -10px;
}
#seminar .intro h3::before{
	left: -19px;
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 100% 50%);
}
#seminar .intro h3::after{
	right: -19px;
	clip-path: polygon(100% 0, 0 50%, 100% 100%, 0 100%, 0 0);
}
#seminar .intro .inner div:nth-of-type(1) h3::before,
#seminar .intro .inner div:nth-of-type(1) h3::after{
	background-color: #bcb9b0;
}
#seminar .intro .inner div:nth-of-type(2) h3::before,
#seminar .intro .inner div:nth-of-type(2) h3::after{
	background-color: #ae8d56;
}

/* リボン小 */
#seminar .intro h3 span::before,
#seminar .intro h3 span::after{
	width: 30px;
	height: 10px;
	bottom: -10px;
}
#seminar .intro h3 span::before{
	left: 0px;
}
#seminar .intro h3 span::after{
	right: 0px;
}
#seminar .intro .inner div:nth-of-type(1) h3 span::before{
	background: linear-gradient(16deg, rgba(188,185,176,1) 50%, rgba(196,153,61,1) 50%);
}
#seminar .intro .inner div:nth-of-type(1) h3 span::after{
	background: linear-gradient(-16deg, rgba(188,185,176,1) 50%, rgba(196,153,61,1) 50%);
}
#seminar .intro .inner div:nth-of-type(2) h3 span::before{
	background: linear-gradient(16deg, rgba(174,141,86,1) 50%, rgba(188,185,176,1) 50%);
}
#seminar .intro .inner div:nth-of-type(2) h3 span::after{
	background: linear-gradient(-16deg, rgba(174,141,86,1) 50%, rgba(188,185,176,1) 50%);
}
#seminar .intro p{
	margin: auto;
	width: 200px;
	line-height: 2;
}
/*================================  movie  ================================*/
#seminar .movie_wrap{
	margin-top: 60px;
	color: #fff;
	text-align: center;
}
#seminar .movie_wrap h3{
	margin-top: 20px;
	font-size: 2.8rem;
	font-weight: var(--weight-bold);
	font-family: var(--font-ver1);
}
#seminar .movie_wrap .movie{
	margin: 20px auto 0;
	width: 485px;
	height: 280px;
	background-color: black;
}
#seminar .movie_wrap .btn_wrap{
	margin-top: 90px;
}
#seminar .movie_wrap .btn_wrap a{
	width: 420px;
}
/*================================  これからの講座  ================================*/
#seminar .seminar_wrap{
	margin-top: 60px;
	margin-bottom: 120px;
	color: #fff;
	text-align: center;
}
#seminar .seminar_wrap .inner{
	position: relative;
}
#seminar .seminar_wrap .inner::before,
#seminar .seminar_wrap .inner::after{
	content: "";
	position: absolute;
	background-size: cover;
}
#seminar .seminar_wrap .inner::before{
	width: 442px;
	height: 386px;
	top: -40px;
	right: -310px;
	background-image: url(../a_images/top/seminar_list_deco_1.png);
}
#seminar .seminar_wrap .inner::after{
	width: 340px;
	height: 392px;
	bottom: -100px;
	left: -190px;
	background-image: url(../a_images/top/seminar_list_deco_2.png);
}

#seminar .seminar_wrap h3{
	margin-top: 20px;
	font-size: 2.8rem;
	font-weight: var(--weight-bold);
	font-family: var(--font-ver1);
}
/*============ seminar_list ============*/
#seminar .seminar_list_wrap{
	margin: 45px auto 0;
	width: 800px;
	text-align: left;
}
#seminar .seminar_list{
	position: relative;
}
#seminar .seminar_list::after{
	content: "";
	width: 202px;
	height: 244px;
	position: absolute;
	bottom: 0px;
	right: -250px;
	background-image: url(../a_images/top/seminar_list_deco_3.svg);
}
#seminar .seminar_list_wrap .seminar_list article{
	position: relative;
	z-index: 2;
}
#seminar .seminar_list_wrap .seminar_list article + article{
	margin-top: 65px;
}
#seminar .seminar_list_wrap .seminar_list .seminar_list_inner{
	padding: 35px;
	position: relative;
	background-color: #fff;
	clip-path: polygon(100% 0, 100% calc(100% - 30px), calc(100% - 30px) 100%, 0 100%, 0 0);
}
#seminar .seminar_list_wrap .seminar_list .seminar_list_inner::before {
    content: "";
    width: 30px;
    height: 30px;
    position: absolute;
    z-index: 2;
    bottom: 0;
    right: 0;
    background: linear-gradient(-45deg, rgb(255 255 255 / 0) 50%, rgb(188 185 176 / 1) 50%);
}
/* cate */
#seminar .seminar_list_wrap .seminar_list .cate{
	padding-left: 25px;
	color: var(--color-base);
	font-weight: var(--weight-bold);
	position: relative;
}
#seminar .seminar_list_wrap .seminar_list .cate::before{
	content:"";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
#seminar .seminar_list_wrap .seminar_list .cate.ftof_online{
	padding-left: 50px
}
#seminar .seminar_list_wrap .seminar_list .cate.ftof_online::before{
	width: 40px;
	height: 18px;
	background: 
	url(../a_images/top/icon_movie.svg) no-repeat right center,
	url(../a_images/top/icon_human.svg) no-repeat left center;
}
#seminar .seminar_list_wrap .seminar_list .cate.online{
	padding-left: 30px;
}
#seminar .seminar_list_wrap .seminar_list .cate.online::before{
	width: 18px;
	height: 14px;
	background: url(../a_images/top/icon_movie.svg) no-repeat right center;
}
#seminar .seminar_list_wrap .seminar_list .cate.ftof::before{
	width: 12px;
	height: 18px;
	background: url(../a_images/top/icon_human.svg) no-repeat left center;
}
/* h4 */
#seminar .seminar_list_wrap .seminar_list h4{
	margin-top: 20px;
	padding-bottom: 15px;
	text-align: center;
	color: var(--color-black);
	font-size: 1.8rem;
	font-weight: var(--weight-bold);
	line-height: 2;
	border-bottom: 2px solid var(--color-base);
}
/* info */
#seminar .seminar_list_wrap .seminar_list .info{
	margin-top: 10px;
	padding: 0 0 0 10px;
	display: flex;
	flex-wrap: wrap;
	color: var(--color-base);
}
#seminar .seminar_list_wrap .seminar_list .info li{
	margin-top: 5px;
	margin-right: 10px;
	padding-left: 19px;
	position: relative;
	letter-spacing: 0.1em;
}
#seminar .seminar_list_wrap .seminar_list .info li::before{
	content:"";
	top: 50%;
	left: 0;
	width: 16px;
	height: 15px;
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background-repeat: no-repeat;
	background-position: left center;
}
#seminar .seminar_list_wrap .seminar_list .info li.schedule::before{
	background-image: url(../a_images/top/icon_schedule.svg);
	background-size: 14px auto;
}
#seminar .seminar_list_wrap .seminar_list .info li.upload::before{
	background-image: url(../a_images/top/icon_movie.svg);
	background-size: 16px auto;
}
#seminar .seminar_list_wrap .seminar_list .info li.time::before{
	background-image: url(../a_images/top/icon_time.svg);
	background-size: 14px auto;
}
#seminar .seminar_list_wrap .seminar_list .info li.location{
	padding-left: 15px;
}
#seminar .seminar_list_wrap .seminar_list .info li.location::before{
	background-image: url(../a_images/top/icon_location.svg);
	background-size: auto 14px;
}
#seminar .seminar_list_wrap .seminar_list .info li.teacher{
	padding-left: 15px;
}
#seminar .seminar_list_wrap .seminar_list .info li.teacher::before{
	background-image: url(../a_images/top/icon_human.svg);
	background-size: 10px auto;
}
#seminar .seminar_list_wrap .seminar_list .info li .num{
	font-family: var(--font-en);
	font-weight: var(--weight-medium);
}
/* タグ */
#seminar .seminar_list_wrap .seminar_list .tag{
	margin-top: 7px;
	margin-right: -13px;
	padding: 0 4px;
	display: flex;
	flex-wrap: wrap;
}
#seminar .seminar_list_wrap .seminar_list .tag li{
	margin-right: 13px;
	margin-top: 8px;
}
#seminar .seminar_list_wrap .seminar_list .tag li a{
	padding: 5px 17px;
	display: block;
	font-family: var(--font-ver1);
	font-size: 1.2rem;
	border: 1px solid var(--color-base);
	border-radius: 30px;
}
/* status */
#seminar .seminar_list_wrap .seminar_list .status{
	width: 90px;
	height: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border-radius: 100%;
	color: #fff;
	font-style: var(--font-ver1);
	font-weight: var(--weight-bold);
	position: absolute;
	top: -20px;
	right: -28px;
	z-index: 3;
	box-shadow: 3px 3px 0px 0px rgb(0 0 0 / 0.2);
}
#seminar .seminar_list_wrap .seminar_list .status_level1 .status{
	background-color: #4f700f;
}
#seminar .seminar_list_wrap .seminar_list .status_level2 .status{
	background-color: #ea5550;
}
#seminar .seminar_list_wrap .seminar_list .status_level3 .status{
	background-color: #3e3a39;
}
#seminar .seminar_list_wrap .seminar_list .status_level3::before{
	content:"";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-color: rgb( 62 58 57 / 0.3 );
	clip-path: polygon(100% 0, 100% calc(100% - 30px), calc(100% - 30px) 100%, 0 100%, 0 0);
	z-index: 2;
}
#seminar .seminar_list_wrap > .btn_wrap{
	margin-top: 100px;
}
#seminar .seminar_list_wrap > .btn_wrap a{
	width: 420px;
}
#seminar .seminar_list_wrap .seminar_list article .btn_wrap{
	margin-top: 30px;
}
/* none_seminar */
#seminar .seminar_list_wrap .none_seminar{
	text-align: center;
	font-size: 2.8rem;
	font-family: var(--font-ver1);
	letter-spacing: 0.2em;
}
/*================================  選べる受講ジャンル  ================================*/
#seminar .genre{
	padding-top: 100px;
	padding-bottom: 320px;
	background: 
	url(../a_images/top/seminar_genre_bg.png) no-repeat left calc(50% + 20px) bottom 1304px / 1504px auto,
	url(../a_images/top/seminar_genre_bg3.png) no-repeat left calc(50% + 630px) bottom 255px / 244px auto,
	#d8c79c;
}
#seminar .genre .inner{
	position: relative;
}
#seminar .genre .inner::after{
	content: "";
	width: 378px;
	height: 410px;
	position: absolute;
	left: -230px;
	bottom: -118px;
	background: url(../a_images/top/seminar_genre_bg2.png) no-repeat center / cover;
}
/*============ h3 ============*/
#seminar .genre .inner > .fukidashi_wrap{
	text-align: center;
	color: #fff;
}
#seminar .genre .inner > h3{
	margin-top: 15px;
	text-align: center;
	color: #fff;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 2.8rem;
}
/*============ ジャンル リスト ============*/
#seminar .genre .genre_list{
	margin-top: 70px;
	padding: 0 75px;
}
#seminar .genre .genre_list figure + figure{
	margin-top: 65px;
}
#seminar .genre .genre_list figure{
	display: flex;
	position: relative;
	align-items: center;
	background-color: #fff;
}
#seminar .genre .genre_list figure img{
	width: 450px;
}
#seminar .genre .genre_list figure figcaption{
	padding: 0 45px;
	width: calc(100% - 450px);
}
#seminar .genre .genre_list figure figcaption dt{
	font-family: var(--font-ver1);
	font-size: 2.4rem;
	font-weight: var(--weight-bold);
	text-align: center;
}
#seminar .genre .genre_list figure figcaption dd{
	margin-top: 15px;
	font-size: 1.4rem;
	line-height: 2;
}
#seminar .genre .genre_list figure figcaption .btn_wrap{
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 50%);
}
#seminar .genre .genre_list figure figcaption .btn_wrap a{
	border: 1px solid #fff;
	color: #fff;
}
#seminar .genre .genre_list figure figcaption .btn_wrap a::after{
	background-image: url(../a_images/btn_wrap_arrow_white.svg);
}
/* 色の設定 */
#seminar .genre .genre_list figure:nth-of-type(1) figcaption dt{
	color: var(--color-base);
}
#seminar .genre .genre_list figure:nth-of-type(1) figcaption .btn_wrap a{
	background-color: var(--color-base);
}
#seminar .genre .genre_list figure:nth-of-type(2) figcaption dt{
	color: #bcb9b0;
}
#seminar .genre .genre_list figure:nth-of-type(2) figcaption .btn_wrap a{
	background-color: #bcb9b0;
}
#seminar .genre .genre_list figure:nth-of-type(3) figcaption dt{
	color: #ae8d56;
}
#seminar .genre .genre_list figure:nth-of-type(3) figcaption .btn_wrap a{
	background-color: #ae8d56;
}
/* 位置の設定 */
#seminar .genre .genre_list figure:nth-of-type(2) img{
	order: 2;
}
#seminar .genre .genre_list figure:nth-of-type(2) figcaption{
	order: 1;
}
#seminar .genre section {
	position: relative;
	z-index: 2;
}
/* ドッグイヤー */
#seminar .genre section::before{
	content: "";
	width: 70px;
	height: 70px;
	position: absolute;
	top: 0;
	right: 0;
	background: linear-gradient(225deg, rgba(216,199,156,1) 50%, rgba(216,216,215,1) 50%);
}
/*============ price ============*/
#seminar .genre .price{
	margin-top: 160px;
	padding: 130px 0 70px;
	background-color: #fff;
}
#seminar .genre .price h4{
	color: #fff;
}
#seminar .genre .price .title_h2 p {
	color: var(--color-base);
}
#seminar .genre .price .price_explane{
	margin: 65px auto 0;
	width: 500px;
}
#seminar .genre .price .price_explane > div{
	text-align: center;
	font-weight: var(--weight-bold);
}
#seminar .genre .price .price_explane .top,
#seminar .genre .price .price_explane .bottom{
	background-color: var(--color-gray);
}
#seminar .genre .price .price_explane .top{
	padding: 15px 0;
	font-family: var(--font-ver1);
	font-size: 3.3rem;
	color: var(--color-base);
	letter-spacing: 0.15em;
}
#seminar .genre .price .price_explane .top span{
	font-size: 2rem;
}
#seminar .genre .price .price_explane .middle{
	padding: 15px 0;
	font-size: 4rem;
	line-height: 1;
}
#seminar .genre .price .price_explane .bottom{
	padding: 25px 0;
}
#seminar .genre .price .price_explane .bottom > span{
	display: block;
}
#seminar .genre .price .price_explane .bottom .text1{
	font-size: 2rem;
}
#seminar .genre .price .price_explane .bottom .text2{
	font-size: 3rem;
	color: var(--color-base);
	letter-spacing: 0.15em;
}
#seminar .genre .price .price_explane .bottom .text2 span{
	margin: 0 10px;
	font-size: 6rem;
}
#seminar .genre .price .price_explane .bottom .text2 span.size_s{
	margin: 0;
	font-size: 1.2rem;
	letter-spacing: 0.1em;
}
#seminar .genre .price .price_explane .note{
	margin-top: 8px;
	text-align: right;
	font-weight: normal;
	font-size: 1.4rem;
}
#seminar .genre .price .btn_wrap{
	margin-top: 50px;
}
/*============ 講師紹介 ============*/
#seminar .genre .teacher {
	margin-top: 65px;
	padding: 120px 65px;
	background-color: #fff;
}
#seminar .genre .teacher .fukidashi_wrap{
	text-align: center;
	color: var(--color-base);
}
#seminar .genre .teacher h4{
	margin-top: 15px;
	font-size: 2.8rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	text-align: center;
	color: var(--color-base);
}
/* teacher main */
#seminar .genre .teacher .teacher_main{
	margin-top: 40px;
	display: flex;
	align-items: center;
}
#seminar .genre .teacher .teacher_main .img_wrap{
	width: 360px;
	position: relative;
}
#seminar .genre .teacher .teacher_main .img_wrap::before{
	content: "";
	width: 462px;
	height: 136px;
	position: absolute;
	bottom: 20px;
	right: -8px;
	background-image: url(../a_images/top/seminar_teacher_main_deco.svg);
}
#seminar .genre .teacher .teacher_main img{
	width: 100%;
}
#seminar .genre .teacher .teacher_main figcaption{
	padding-left: 60px;
	width: calc(100% - 360px);
}
#seminar .genre .teacher .teacher_main figcaption dt{
	color: var(--color-base);
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#seminar .genre .teacher .teacher_main figcaption dt .post{
	color: var(--color-base);
	font-size: 1.4rem;
}
#seminar .genre .teacher .teacher_main figcaption dt .name{
	margin-top: 10px;
	font-size: 2.2rem;
	display: flex;
	align-items: center;
}
#seminar .genre .teacher .teacher_main figcaption dt .name span{
	margin-left: 12px;
	font-size: 1.4rem;
}
#seminar .genre .teacher .teacher_main figcaption dd{
	margin-top: 30px;
	line-height: 2;
}
#seminar .genre .teacher .teacher_main figcaption .btn_wrap{
	margin-top: 40px;
	text-align: left;
}
/* 講師一覧 */
#seminar .genre .teacher .teacher_list_wrap{
	margin-top: 30px;
}
#seminar .genre .teacher .teacher_list_wrap > p{
	padding-bottom: 32px;
	display: inline-block;
	font-size: 1.6rem;
	font-weight: var(--weight-bold);
	color: var(--color-base);
	position: relative;
	transform: rotate(-10deg);
}
#seminar .genre .teacher .teacher_list_wrap > p::after{
	content: "";
	width: 224px;
	height: 30px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	background: url(../a_images/top/seminar_teacher_list_deco.svg);
}
#seminar .genre .teacher .teacher_list{
	margin-top: 15px;
	display: flex;
	justify-content: center;
}
#seminar .genre .teacher .teacher_list li{
	margin: 0 12px;
	text-align: center;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#seminar .genre .teacher .teacher_list img{
	width: 120px;
	margin-bottom: 8px;
}
#seminar .genre .teacher .teacher_list li .post{
	font-size: 1.2rem;
}
#seminar .genre .teacher .teacher_list li .name{
	font-size: 1.6rem;
}
/* タグ */
#seminar .genre .teacher .tag_list{
	margin-top: 15px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
#seminar .genre .teacher .tag_list li{
	margin: 13px 5px 0;
}
#seminar .genre .teacher .tag_list li a{
	min-width: 200px;
	padding: 12px 0;
	display: block;
	text-align: center;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 1.5rem;
	border: 1px solid var(--color-base);
	border-radius: 30px;
}
#seminar .genre .teacher .btn_wrap{
	margin-top: 70px;
}
/*==============================================================================

	seminar スマホ

==============================================================================*/
@media all and (max-width: 768px) {
	#seminar{
		padding-top: 100px;
	}
	#seminar::before{
        height: 122px;
        background: url(../a_images/sp_wave_gold.svg) repeat-x top left calc(50% + 110px);
	}
	/*================================  intro  ================================*/
	#seminar .intro{
		margin-top: 50px;
	}
	#seminar .intro .inner{
		width: 260px;
		display: block;
		position: relative;
		text-align: center;
		background: none;
	}
	/*============ deco ============*/
	#seminar .intro .inner::before,
	#seminar .intro .inner::after{
		content: none;
	}
	#seminar .intro .inner > div{
		margin: 0;
		display: inline-block;
		padding-top: 95px;
		width: 230px;
		height: 230px;
		position: relative;
		border-radius: 100%;
		background-color: #fff;
		text-align: center;
	}
	#seminar .intro .inner > div:nth-child(2){
		margin-top: 145px;
	}
	#seminar .intro .inner > div:nth-child(2)::after{
		content: "";
		width: 90px;
		height: 90px;
		position: absolute;
		top: -135px;
		left: 50%;
		transform: translateX(-50%);
		background: url(../a_images/top/seminar_cross.svg) no-repeat center / 90px auto;
	}
	/*============ h3 ============*/
	#seminar .intro h3{
		width: calc(100% + 8px);
		position: absolute;
		top: 25px;
		font-size: 2rem;
	}
	#seminar .intro p{
		width: 170px;
		font-size: 1.2rem;
	}
	/*================================  movie  ================================*/
	#seminar .movie_wrap h3{
		margin-top: 13px;
		font-size: 2rem;
	}
	#seminar .movie_wrap .movie{
		margin: 20px auto;
		width: 100%;
		height: auto;
		aspect-ratio: 3 / 2;
	}
	#seminar .movie_wrap .btn_wrap{
		margin-top: 40px;
	}
	#seminar .movie_wrap .btn_wrap a{
		width: 300px;
	}
	/*================================  これからの講座  ================================*/
	#seminar .seminar_wrap{
		margin-top: 80px;
		margin-bottom: 40px;
	}
	#seminar .seminar_wrap .inner::before,
	#seminar .seminar_wrap .inner::after{
		content: none;
	}
	#seminar .seminar_wrap h3{
		margin-top: 10px;
		font-size: 2rem;
	}
	/*============ seminar_list ============*/
	#seminar .seminar_list_wrap{
		margin: 20px auto 0;
		padding: 0 10px;
		width: 100%;
	}
	#seminar .seminar_list::after{
		width: 44px;
		height: 40px;
		bottom: -45px;
		right: -15px;
		background-image: url(../a_images/top/seminar_list_deco_sp.svg);
	}
	#seminar .seminar_list_wrap .seminar_list article + article{
		margin-top: 50px;
	}
	#seminar .seminar_list_wrap .seminar_list .seminar_list_inner{
		padding: 15px 10px;
		clip-path: polygon(100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%, 0 0);
	}
	#seminar .seminar_list_wrap .seminar_list .seminar_list_inner::before {
		width: 20px;
		height: 20px;
	}
	/* cate */
	#seminar .seminar_list_wrap .seminar_list .cate{
		padding-left: 25px;
		font-size: 1rem;
	}
	#seminar .seminar_list_wrap .seminar_list .cate::before{
		content:"";
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	#seminar .seminar_list_wrap .seminar_list .cate.ftof_online{
		padding-left: 35px
	}
	#seminar .seminar_list_wrap .seminar_list .cate.ftof_online::before{
		width: 26px;
		height: 12px;
		background: 
		url(../a_images/top/icon_movie.svg) no-repeat right center / 13px auto ,
		url(../a_images/top/icon_human.svg) no-repeat left center / 8px auto;
	}
	#seminar .seminar_list_wrap .seminar_list .cate.online{
		padding-left: 20px;
	}
	#seminar .seminar_list_wrap .seminar_list .cate.online::before{
		width: 13px;
		height: 11px;
		background: url(../a_images/top/icon_movie.svg) no-repeat right center / 13px auto ;
	}
	#seminar .seminar_list_wrap .seminar_list .cate.ftof{
		padding-left: 15px;
	}
	#seminar .seminar_list_wrap .seminar_list .cate.ftof::before{
		width: 8px;
		height: 12px;
		background: url(../a_images/top/icon_human.svg) no-repeat left center / 8px auto;
	}
	/* h4 */
	#seminar .seminar_list_wrap .seminar_list h4{
		margin-top: 10px;
		padding-bottom: 15px;
		font-size: 1.4rem;
		text-align: left;
	}
	/* info */
	#seminar .seminar_list_wrap .seminar_list .info li{
		font-size: 1rem;
	}
	/* タグ */
	#seminar .seminar_list_wrap .seminar_list .tag{
		margin-top: 7px;
		margin-right: -5px;
		padding: 0 4px;
	}
	#seminar .seminar_list_wrap .seminar_list .tag li{
		margin-right: 5px;
		margin-top: 8px;
	}
	#seminar .seminar_list_wrap .seminar_list .tag li a{
		padding: 5px 15px;
		font-size: 1rem;
	}
	/* status */
	#seminar .seminar_list_wrap .seminar_list .status{
		width: 70px;
		height: 70px;
		top: -35px;
		right: -10px;
		font-size: 1.2rem;
	}
	#seminar .seminar_list_wrap .seminar_list .status_level3::before{
		clip-path: polygon(100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%, 0 0);
	}
	/* 一覧へのボタン */
	#seminar .seminar_list_wrap > .btn_wrap{
		margin-top: 35px;
	}
	#seminar .seminar_list_wrap > .btn_wrap a{
		width: 240px;
	}
	/* 詳細へのボタン */
	#seminar .seminar_list_wrap .seminar_list article .btn_wrap{
		margin-top: 15px;
	}
	#seminar .seminar_list_wrap .seminar_list article .btn_wrap a{
		padding-top: 8px;
		padding-bottom: 6px;
		width: 160px;
		font-size: 1.3rem;
	}
	/* none_seminar */
	#seminar .seminar_list_wrap .none_seminar{
		font-size: 1.6rem;
		letter-spacing: 0.15em;
	}
	/*================================  選べる受講ジャンル  ================================*/
	#seminar .genre{
		padding-top: 35px;
		padding-bottom: 235px;
		background: #d8c79c;
	}
	#seminar .genre .inner::after{
		width: 180px;
		height: 162px;
		left: unset;
		right: -10px;
		bottom: -190px;
		background: url(../a_images/top/seminar_genre_bg_sp.svg) no-repeat center / cover;
	}
	/*============ h3 ============*/
	#seminar .genre .inner > h3{
		font-size: 2.2rem;
	}
	/*============ ジャンル リスト ============*/
	#seminar .genre .genre_list{
		margin-top: 30px;
		padding: 0;
	}
	#seminar .genre .genre_list figure + figure{
		margin-top: 50px;
	}
	#seminar .genre .genre_list figure{
		display: block;
	}
	#seminar .genre .genre_list figure img{
		width: 100%;
	}
	#seminar .genre .genre_list figure figcaption{
		padding: 15px  20px 40px;
		width: calc(100%);
	}
	#seminar .genre .genre_list figure figcaption dt{
		font-size: 2rem;
	}
	#seminar .genre .genre_list figure figcaption dd{
		margin-top: 12px;
		font-size: 1.3rem;
	}
	#seminar .genre .genre_list figure figcaption .btn_wrap{
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translate(-50%, 50%);
	}
	#seminar .genre .genre_list figure figcaption .btn_wrap a{
		width: 280px;
	}
	#seminar .genre .genre_list figure figcaption .btn_wrap a::after{
		background-image: url(../a_images/btn_wrap_arrow_white.svg);
	}
	/* ドッグイヤー */
	#seminar .genre section::before{
		width: 40px;
		height: 40px;
	}
	/*============ price ============*/
	#seminar .genre .price{
		margin-top: 80px;
		padding: 45px 20px 35px;
	}
	#seminar .genre .price .title_h2 p {
		color: var(--color-base);
	}
	#seminar .genre .price .title_h2 [lang="en"] .deco::after{
		width: 30px;
		height: 38px;
		right: -30px;
		bottom: -12px;
		top: unset;
		background-image: url(../a_images/h2_deco_gold_right.svg);
	}
	#seminar .genre .price .price_explane{
		margin: 20px auto 0;
		width: 100%;
	}
	#seminar .genre .price .price_explane .top{
		padding: 10px 20px;
		font-size: 1.7rem;
	}
	#seminar .genre .price .price_explane .top span{
		font-size: 1.2rem;
	}
	#seminar .genre .price .price_explane .middle{
		padding: 5px 20px;
	}
	#seminar .genre .price .price_explane .bottom{
		padding: 15px 20px;
	}
	#seminar .genre .price .price_explane .bottom .text1{
		font-size: 1.2rem;
	}
	#seminar .genre .price .price_explane .bottom .text2{
		font-size: 1.7rem;
	}
	#seminar .genre .price .price_explane .bottom .text2 span{
		margin: 0 10px;
		font-size: 3.4rem;
	}
	#seminar .genre .price .price_explane .note{
		font-size: 1.1rem;
	}
	#seminar .genre .price .btn_wrap{
		margin-top: 25px;
	}
	#seminar .genre .price .btn_wrap a{
		width: 240px;
	}
	/*============ 講師紹介 ============*/
	#seminar .genre .teacher {
		padding: 45px 20px 35px;
		background-color: #fff;
	}
	#seminar .genre .teacher h4{
		font-size: 2.2rem;
	}
	/* teacher main */
	#seminar .genre .teacher .teacher_main{
		margin-top: 35px;
		display: block;
	}
	#seminar .genre .teacher .teacher_main .img_wrap{
		margin: 0 auto;
		width: 240px;
	}
	#seminar .genre .teacher .teacher_main .img_wrap::before{
		width: 306px;
		height: 91px;
		bottom: 15px;
		right: -8px;
		background-size: 100% auto;
	}
	#seminar .genre .teacher .teacher_main figcaption{
		margin-top: 20px;
		padding-left: 0;
		width: calc(100%);
	}
	#seminar .genre .teacher .teacher_main figcaption dt .post{
		font-size: 1.3rem;
		text-align: center;
	}
	#seminar .genre .teacher .teacher_main figcaption dt .name{
		margin-top: 8px;
		font-size: 1.8rem;
		justify-content: center;
	}
	#seminar .genre .teacher .teacher_main figcaption dt .name span{
		font-size: 1.3rem;
	}
	#seminar .genre .teacher .teacher_main figcaption dd{
		margin-top: 20px;
	}
	#seminar .genre .teacher .teacher_main figcaption .btn_wrap{
		margin-top: 25px;
		text-align: center;
	}
	#seminar .genre .teacher .teacher_main figcaption .btn_wrap a{
		width: 240px;
	}
	/* 講師一覧 */
	#seminar .genre .teacher .teacher_list_wrap{
		margin-top: 45px;
		text-align: center;
	}
	#seminar .genre .teacher .teacher_list_wrap > p{
		padding-bottom: 32px;
		font-size: 1.4rem;
		transform: rotate(0deg);
	}
	#seminar .genre .teacher .teacher_list{
		margin-top: calc(20px - 12px);
		flex-wrap: wrap;
		justify-content: left;
	}
	#seminar .genre .teacher .teacher_list li{
		margin: 12px 0;
		width: 50%;
		text-align: center;
	}
	#seminar .genre .teacher .teacher_list li .post{
		font-size: 1.1rem;
	}
	#seminar .genre .teacher .teacher_list li .name{
		font-size: 1.4rem;
	}
	/* タグ */
	#seminar .genre .teacher .tag_list{
		margin-top: 15px;
		display: flex;
		justify-content: left;
		flex-wrap: wrap;
	}
	#seminar .genre .teacher .tag_list li{
		margin: 13px 5px 0;
	}
	#seminar .genre .teacher .tag_list li a{
		min-width: auto;
		padding: 5px 15px;
		font-size: 1rem;
		border-radius: 30px;
	}
	#seminar .genre .teacher .btn_wrap{
		margin-top: 40px;
	}
	#seminar .genre .teacher .btn_wrap a{
		width: 240px;
	}
}





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

	5.blog

==============================================================================================================================================================
============================================================================================================================================================*/
#blog{
	padding-top: 175px;
	padding-bottom: 225px;
	background-color: #fff;
	position: relative;
}
#blog::before {
    content: "";
    width: 100%;
    height: 233px;
    position: absolute;
	background: url(../a_images/wave_white.svg) repeat-x  top center;
    left: 0;
    bottom: 100%;
}
#blog .inner{
	position: relative;
	z-index: 2;
}
#blog .inner::after{
	content: "";
	width: 442px;
	height: 386px;
	position: absolute;
	top: -360px;
	right: -170px;
	background: url(../a_images/top/blog_deco.png) no-repeat center / cover;
}
#blog h2{ 
	color: #fff;
}
#blog .title_h2 p {
    color: var(--color-base);
}
/*================================  blog_list  ================================*/
#blog .blog_list {
	margin-top: 40px;
	margin-left: -40px;
	display: flex;
}
#blog .blog_list figure {
	margin-left: 40px;
	width: calc(100% / 3 - 40px);
}
#blog .blog_list figure .img_wrap {
	display: block;
	aspect-ratio: 3/2;
}
#blog .blog_list figure .img_wrap img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
#blog .blog_list figure figcaption{
	margin-top: 30px;
}
#blog .blog_list figure figcaption .cate_date{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#blog .blog_list figure figcaption .cate_date .cate{
	max-width: 190px;
	min-width: 130px;
	padding: 8px 10px;
	display: block;
	font-size: 1.3rem;
	font-weight: var(--weight-regular);
	color: #fff;
	text-align: center;
	background-color: var(--color-base);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
#blog .blog_list figure figcaption .cate_date .date{
	font-family: var(--font-en);
	font-weight: var(--weight-medium);
	color: var(--color-base);
}
#blog .blog_list figure figcaption .title{
	margin-top: 10px;
	font-size: 1.8rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	color: var(--color-black);
	overflow: hidden;
	display: -webkit-box;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}
#blog .blog_list figure figcaption .tag_list{
	margin-top: 18px;
	margin-left: -10px;
	display: flex;
	flex-wrap: wrap;
}
#blog .blog_list figure figcaption .tag_list li{
	margin-left: 10px;
}
#blog .blog_list figure figcaption .tag_list li a{
	color: #bcb9b0;
	font-size: 1.1rem;
}
#blog .btn_wrap{
	margin-top: 45px;
}
/*==============================================================================

	blog スマホ

==============================================================================*/
@media all and (max-width: 768px) {
	#blog{
		padding-top: 120px;
		padding-bottom: 150px;
		background: url(../a_images/top/blog_deco_bg_sp.svg) no-repeat right -10px bottom 38px;
	}
	#blog::before {
		height: 122px;
		background: url(../a_images/sp_wave_white.svg) repeat-x top left calc(50% + 110px);
	}
	#blog .inner::after{
		content: none;
	}
	/*================================  blog_list  ================================*/
	#blog .blog_list {
		margin-top: 40px;
		margin-left: 0;
		display: block;
	}
	#blog .blog_list figure + figure{
		margin-top: 20px;
		padding-top: 20px;
		border-top: 1px solid var(--color-base);
	}
	#blog .blog_list figure {
		margin-left: 0;
		width: calc(100%);
		display: flex;
		align-items: self-start;
	}
	#blog .blog_list figure .img_wrap {
		width: 120px;
		display: block;
		aspect-ratio: 3/2;
	}
	#blog .blog_list figure figcaption{
		margin-top: 0;
		padding-left: 20px;
		width: calc(100% - 120px);
	}
	#blog .blog_list figure figcaption .cate_date{
		flex-wrap: wrap;
	}
	#blog .blog_list figure figcaption .cate_date .cate{
		margin-top: 5px;
		max-width: 100%;
		min-width: 100px;
		padding: 5px 10px;
		font-size: 1rem;
		order: 2;
	}
	#blog .blog_list figure figcaption .cate_date .date{
		width: 100%;
		order: 1;
		font-size: 1rem;
	}
	#blog .blog_list figure figcaption .title{
		margin-top: 5px;
		font-size: 1.4rem;
		-webkit-line-clamp: 1;
	}
	#blog .blog_list figure figcaption .tag_list{
		margin-top: 5px;
		margin-left: -10px;
		display: flex;
	}
	#blog .blog_list figure figcaption .tag_list li{
		margin-left: 10px;
	}
	#blog .blog_list figure figcaption .tag_list li a{
		color: #bcb9b0;
		font-size: 1.1rem;
	}
	#blog .btn_wrap{
		margin-top: 40px;
	}
	#blog .btn_wrap a{
		width: 240px;
	}
}

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

	6.calender

==============================================================================================================================================================
============================================================================================================================================================*/
#calender{
	padding: 155px 0 135px;
	background: 
	url(../a_images/top/calender_bg1.png) no-repeat left calc(50% - 670px) bottom 324px / 444px auto,
	url(../a_images/top/calender_bg2.png) no-repeat left calc(50% + 640px) bottom 100px / 294px auto,
	#f5f5f5;
	position: relative;
}
#calender::before {
    content: "";
    width: 100%;
    height: 233px;
    position: absolute;
	background: url(../a_images/wave_gray.svg) repeat-x  top center;
    left: 0;
    bottom: 100%;
}
#calender h2{ 
	color: #f5f5f5;
}
#calender .title_h2 p {
    color: var(--color-base);
}
.calender_wrap {
	margin-top: 40px;
	width: 100%;
}
.calender_wrap .p-calendar__controler {
	display: flex;
	justify-content: center;
	margin-bottom: 40px;
	align-items: center;
}
.calender_wrap .p-calendar__controler > * + * {
	margin-left: 10px;
}
.calender_wrap .p-calendar__controler button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border:none;
	position: relative;
	background: none;
	color: #c4993d;
	padding: 0 10px;
}
.calender_wrap table {
	width: 100%;
	table-layout: fixed;
}
.calender_wrap table th,
.calender_wrap table td {
	border: 1px solid #BCB9B0;
	padding: 5px 8px;
}
.calender_wrap table th {
	text-align: center;
	color: rgb(196, 153, 61);
}
.calender_wrap table td div {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 80px;
}
.calender_wrap table td div a {
	font-size: 1.2rem;
}
/*==============================================================================

	calender スマホ

==============================================================================*/
@media all and (max-width: 768px) {
	#calender{
		padding: 130px 0 80px;
		background:#f5f5f5;
	}
	#calender::before {
		height: 122px;
		background: url(../a_images/sp_wave_gray.svg) repeat-x top left calc(50% + 110px);
	}
	#calender .calender_wrap{
		margin-top: 40px;
		width: 100%;
	}
}



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

	about

==========================================================================================================================================================================================================================================================================================================================*/
#under_about .pankuzu{
	background-color: var(--color-gray);
}
#under_about main > section{
	padding-top: 150px;
	background: 
	url(../a_images/about/bg1.svg) no-repeat left calc(50%) top 60px,
	var(--color-gray);
}
#under_about h3{
	text-align: center;
}
#under_about h3 span{
	display: block;
}
#under_about h3 span[lang="en"]{
	color: var(--color-base);
	font-size: 1.8rem;
	font-weight: var(--weight-medium);
}
#under_about h3 span[lang="ja"]{
	margin-top: 10px;
	font-size: 2.8rem;
	font-weight: var(--weight-bold);
	letter-spacing: 0.2em;
}
/*==============================================================================

	スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_about main > section{
		padding-top: 75px;
		background: var(--color-gray);
	}
	#under_about h3 span[lang="en"]{
		font-size: 1.3rem;
	}
	#under_about 	h3 span[lang="ja"]{
		font-size: 1.8rem;
	}
}



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

	1.h2

==============================================================================================================================================================
============================================================================================================================================================*/
#under_about main h2{
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 2.8rem;
	line-height: 1.8;
	color: var(--color-base);
	text-align: center;
}

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

	header スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_about main h2{
		font-size: 1.8rem;
		line-height: 1.8;
	}
}



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

	2.代表の想い

==============================================================================================================================================================
============================================================================================================================================================*/
#under_about #representaive{
	margin-top: 120px;
}
#under_about #representaive .inner{
	width: 800px;
}
#under_about #representaive figure{
	margin-top: 50px;
	display: flex;
	align-items: center;
}
#under_about #representaive figure .img_wrap{
	width: 360px;
	position: relative;
}
#under_about #representaive figure .img_wrap img{
	width: 100%;
}
#under_about #representaive figure .img_wrap::before{
	content: "";
	width: 462px;
	height: 136px;
	position: absolute;
	bottom: 20px;
	right: -8px;
	background-image: url(../a_images/top/seminar_teacher_main_deco.svg);
}
#under_about #representaive figure figcaption{
	padding-left: 60px;
	width: calc(100% - 360px);
	font-size: 1.4rem;
	line-height: 2;
}
/*==============================================================================

	代表の想い スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_about #representaive{
		margin-top: 60px;
	}
	#under_about #representaive .inner{
		width: 100%;
	}
	#under_about #representaive figure{
		margin-top: 30px;
		display: block;
	}
	#under_about #representaive figure .img_wrap{
		margin: auto;
		width: 240px;
	}
	#under_about #representaive figure .img_wrap::before{
		width: 306px;
        height: 91px;
        bottom: 15px;
        right: -8px;
        background-size: 100% auto;
	}
	#under_about #representaive figure figcaption{
		margin-top: 20px;
		padding-left: 0px;
		width: calc(100%);
	}
}

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

	3.history

==============================================================================================================================================================
============================================================================================================================================================*/
#under_about #history{
	margin-top: 100px;
}
#under_about #history .inner{
	padding: 85px 0 95px;
	width: 800px;
	background-color: #fff;
	text-align: center;
	position: relative;
	z-index: 2;
}
/*============ list ============*/
#under_about #history ul{
    margin-top: 65px;
    max-width: 560px;
    position: relative;
	display: inline-block;
	text-align: left;
}
#under_about #history ul::after{
    content: "";
    width: 1px;
    height: calc(100% - 0.7em);
    position: absolute;
    top: calc(0.7em);
    left: 8px;
    background-color: #c4993d;
}
#under_about #history ul li{
    padding-left: 35px;
    display: flex;
    align-items: start;
    position: relative;
}
#under_about #history ul li:not(:last-child)::after{/* ドット */
    content: "";
    width: 10px;
    height: 10px;
    position: absolute;
    top: 0.7em;
    left: 4px;
    background-color: #c4993d;
    border-radius: 100%;
}
#under_about #history ul li:last-child::after{
    content: "";
    width: 26px;
    height: 25px;
    position: absolute;
    top: 0;
    left: -5px;
    background: url(../a_images/top/icon.svg) no-repeat center / 100% auto;
    z-index: 3;
}
#under_about #history .inner ul li:last-child::before{/* 白い背景で線を消す */
    content: "";
    width: 10px;
    height: calc(100% - 5px);
    position: absolute;
    bottom: 0;
    left: 4px;
    background-color: #fff;
    z-index: 2;
}
#under_about #history .inner ul li + li{
    margin-top: 25px;
}
#under_about #history .inner ul li p.year{
    width: 4em;
    white-space: nowrap;
    font-size: 1.8rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
    line-height: 1.6;
}
#under_about #history .inner ul li dl{
    width: calc(100% - 4em);
    padding-left: 27px;
}
#under_about #history .inner ul li dl dt{
    font-size: 1.8rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
    color: var(--color-base);
    line-height: 1.6;
}
#under_about #history .inner ul li dl dd{
    margin-top: 10px;
    font-size: 1.3rem;
}
/*==============================================================================

	history スマホ

==============================================================================*/
@media all and (max-width: 768px){
    #under_about #history{
        margin: 50px auto 0;
        width: calc(100% - 40px);
    }
    #under_about #history .inner{
        padding: 40px 20px 60px;
        width: 100%;
    }
    /*============ h2 ============*/
    #under_about #history .inner h2 span[lang="en"]{
        font-size: 1.4rem;
    }
    #under_about #history .inner h2 span[lang="ja"]{
        font-size: 2rem;
    }
    /*============ list ============*/
    #under_about #history .inner ul{
        margin-top: 40px;
    }
    #under_about #history .inner ul::after{
        content: "";
        width: 1px;
        height: calc(100% - 0.85em);
        position: absolute;
        top: calc(0.85em);
        left: 8px;
        background-color: #c4993d;
    }
    #under_about #history .inner ul li{
        padding-left: 25px;
        display: block;
    }
    #under_about #history .inner ul li:not(:last-child)::after{/* ドット */
        width: 5px;
        height: 5px;
        top: 0.85em;
        left: 6px;
    }
    #under_about #history .inner ul li:last-child::after{
        top: 0.25em;
        left: 2px;
        width: calc(18px / 1.5);
        height: calc(26px / 1.5);
    }
    #under_about #history .inner ul li:last-child::before{/* 白い背景で線を消す */
        content: "";
        width: 10px;
        height: 100%;
        position: absolute;
        top: 0;
        left: 4px;
        background-color: #fff;
        z-index: 2;
    }
    #under_about #history .inner ul li + li{
        margin-top: 25px;
    }
    #under_about #history .inner ul li p.year{
        width: 100%;
        font-size: 1.6rem;
    }
    #under_about #history .inner ul li dl{
        margin-top: 10px;
        padding-left: 0px;
    }
    #under_about #history .inner ul li dl dt{
        font-size: 1.6rem;
    }
    #under_about #history .inner ul li dl dd{
        margin-top: 10px;
        font-size: 1.3rem;
    }
}

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

	4.about

==============================================================================================================================================================
============================================================================================================================================================*/
#under_about #about{
	margin-top: 35px;
	padding-bottom: 135px;
	background: 
	url(../a_images/top/bg2.svg) no-repeat left calc(50% + 40px) bottom 107px,
	var(--color-base);
	position: relative;
}
#under_about #about::before{
	content:"";
	position: absolute;
	width: 100%;
	height: 135px;
	background-color: inherit;
	left: 0;
	bottom: 100%;
}
#under_about #about .inner{
	padding: 125px 0 115px;
	width: 800px;
	background-color: #fff;
}
#under_about #about .inner h3{
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 1.8rem;
    color: var(--color-base);
}
#under_about #about .about_content{
	margin: auto;
	width: 450px;
}
#under_about #about .about_content table{
	margin-top: 20px;
	width: 100%;
	border-bottom: 1px solid var(--color-black);
}
#under_about #about .about_content table th,
#under_about #about .about_content table td{
	padding: 15px 0;
	font-weight: normal;
	border-top: 1px solid var(--color-black);
	line-height: 1.8;
}
#under_about #about .about_content p.access{
	margin-top: 18px;
}
#under_about #about .about_content iframe{
	margin-top: 18px;
	width: 100%;
	height: 280px;
}
#under_about #about .about_content .photo{
	margin-top: 20px;
	width: 100%;
}
#under_about #about .about_content .btn_wrap{
	margin-top: 70px;
}
#under_about #about .about_content .btn_wrap a{
	width: 100%;
}
#under_about #about .about_content .btn_wrap + .btn_wrap{
	margin-top: 30px;
}
/*==============================================================================

	history スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_about #about{
		margin-top: 35px;
		padding: 0 20px 50px;
	}
	#under_about #about::before{
		height: 100px;
	}
	#under_about #about .inner{
		padding: 40px 20px;
		width: 100%;
	}
	#under_about #about .inner h3{
		font-size: 1.8rem;
	}
	#under_about #about .about_content{
		width: 100%;
	}
	#under_about #about .about_content table{
		margin-top: 20px;
		width: 100%;
		border-bottom: 2px solid var(--color-black);
	}
	#under_about #about .about_content table th{
		width: 6em;
	}
	#under_about #about .about_content iframe{
		margin-top: 18px;
		width: 100%;
		height: 280px;
	}
	#under_about #about .about_content .btn_wrap{
		margin-top: 35px;
	}
	#under_about #about .about_content .btn_wrap + .btn_wrap{
		margin-top: 20px;
	}
}



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

	規約等

==========================================================================================================================================================================================================================================================================================================================*/
#under_system .pankuzu,
#under_privacypolicy .pankuzu,
#under_legal .pankuzu,
#under_agreement .pankuzu{
	background-color: var(--color-gray);
	padding-bottom: 150px;
}
#under_system .h1::before ,
#under_privacypolicy .h1::before ,
#under_legal .h1::before ,
#under_agreement .h1::before {
    background: url(../a_images/wave_gray_line.svg) repeat-x top center;
}
#under_system em ,
#under_privacypolicy em ,
#under_legal em ,
#under_agreement em{
	color: var(--color-base);
}

#under_system #content ,
#under_privacypolicy #content ,
#under_legal #content ,
#under_agreement #content{
	padding-bottom: 150px;
	background-color: var(--color-gray);
}


/* h2を含む親section */
#under_system .sec_parent + .sec_parent,
#under_privacypolicy .sec_parent + .sec_parent,
#under_legal .sec_parent + .sec_parent,
#under_agreement .sec_parent + .sec_parent{
	margin-top: 60px;	
}
#under_system .sec_parent h2,
#under_privacypolicy .sec_parent h2,
#under_legal .sec_parent h2,
#under_agreement .sec_parent h2{
	font-size: 2rem;
	color: var(--color-base);
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#under_system .sec_parent > *:not(h2),
#under_privacypolicy .sec_parent > *:not(h2),
#under_legal .sec_parent > *:not(h2),
#under_agreement .sec_parent > *:not(h2){
	margin-top: 15px;
}
#under_system .sec_parent > p,
#under_privacypolicy .sec_parent > p,
#under_legal .sec_parent > p,
#under_agreement .sec_parent > p{
	margin-top: 0;
}
#under_system .sec_parent p,
#under_privacypolicy .sec_parent p,
#under_legal .sec_parent p,
#under_agreement .sec_parent p{
	font-size: 1.5rem;
	color: var(--color-black);
	line-height: 1.8;
}

/* h3を含む子section */
#under_privacypolicy .sec_parent > .sec_child:first-of-type,
#under_legal .sec_parent > .sec_child:first-of-type,
#under_agreement .sec_parent > .sec_child:first-of-type{
	margin-top: 70px;
}
#under_system .sec_parent > .sec_child ,
#under_privacypolicy .sec_parent > .sec_child ,
#under_legal .sec_parent > .sec_child ,
#under_agreement .sec_parent > .sec_child {
	margin-top: 30px;
}
#under_system .sec_child h3,
#under_privacypolicy .sec_child h3,
#under_legal .sec_child h3,
#under_agreement .sec_child h3{
	font-size: 2rem;
	color: var(--color-base);
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#under_system .sec_child > *:not(h3),
#under_privacypolicy .sec_child > *:not(h3),
#under_legal .sec_child > *:not(h3),
#under_agreement .sec_child > *:not(h3){
	margin-top: 15px;
}
#under_system .sec_child ol li,
#under_system .sec_child ul li,
#under_system .sec_child p,
#under_privacypolicy .sec_child ol li,
#under_privacypolicy .sec_child ul li,
#under_privacypolicy .sec_child p,
#under_legal .sec_child ol li,
#under_legal .sec_child ul li,
#under_legal .sec_child p,
#under_agreement .sec_child ol li,
#under_agreement .sec_child ul li,
#under_agreement .sec_child p{
	font-size: 1.3rem;
	color: var(--color-black);
	line-height: 1.8;
}
#under_system .sec_child ul li,
#under_privacypolicy .sec_child ul li,
#under_legal .sec_child ul li,
#under_agreement .sec_child ul li{
	margin-left: 1em;
	text-indent: -1em;
}
#under_system .sec_child ol,
#under_privacypolicy .sec_child ol,
#under_legal .sec_child ol,
#under_agreement .sec_child ol{
	margin-left: 0;
	padding-left: 1.5em;
}
#under_system .sec_child ol li + li,
#under_system .sec_child ul li + li,
#under_privacypolicy .sec_child ol li + li,
#under_privacypolicy .sec_child ul li + li,
#under_legal .sec_child ol li + li,
#under_legal .sec_child ul li + li,
#under_agreement .sec_child ol li + li,
#under_agreement .sec_child ul li + li{
	margin-top: 5px;
}
#under_system .sec_child ul li::before,
#under_privacypolicy .sec_child ul li::before,
#under_legal .sec_child ul li::before,
#under_agreement .sec_child ul li::before{
	content:"・";
}

#under_system .sec_child dt,
#under_privacypolicy .sec_child dt,
#under_legal .sec_child dt,
#under_agreement .sec_child dt {
	font-size: 1.6rem;
	font-weight: var(--weight-bold);
	line-height: 1.8;
}
#under_system .sec_child dd ,
#under_privacypolicy .sec_child dd ,
#under_legal .sec_child dd ,
#under_agreement .sec_child dd {
	margin-top: 10px;
	line-height: 1.8;
}
#under_system .sec_child li ul,
#under_system .sec_child li ol,
#under_privacypolicy .sec_child li ul,
#under_privacypolicy .sec_child li ol,
#under_legal .sec_child li ul,
#under_legal .sec_child li ol,
#under_agreement .sec_child li ul,
#under_agreement .sec_child li ol{
	margin-top: 10px;
}

/* 改訂 */
#under_system .sec_parent .revision,
#under_privacypolicy .sec_parent .revision,
#under_legal .sec_parent .revision,
#under_agreement .sec_parent .revision{
	margin-top: 30px;
	font-size: 1.5rem;
}


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

	スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_system .pankuzu,
	#under_privacypolicy .pankuzu,
	#under_legal .pankuzu,
	#under_agreement .pankuzu{
		padding-bottom: 40px;
	}
	#under_system .h1::before ,
	#under_privacypolicy .h1::before ,
	#under_legal .h1::before ,
	#under_agreement .h1::before {
		background: url(../a_images/sp_wave_gray_line.svg) repeat-x top left calc(50% + 110px);
	}

	#under_system #content ,
	#under_privacypolicy #content ,
	#under_legal #content ,
	#under_agreement #content{
		padding-bottom: 60px;
	}
	/* h2を含む親section */
	#under_system .sec_parent + .sec_parent,
	#under_privacypolicy .sec_parent + .sec_parent,
	#under_legal .sec_parent + .sec_parent,
	#under_agreement .sec_parent + .sec_parent{
		margin-top: 40px;	
	}
	#under_system .sec_parent h2,
	#under_privacypolicy .sec_parent h2,
	#under_legal .sec_parent h2,
	#under_agreement .sec_parent h2{
		font-size: 1.5rem;
	}
	#under_system .sec_parent p,
	#under_privacypolicy .sec_parent p,
	#under_legal .sec_parent p,
	#under_agreement .sec_parent p{
		font-size: 1.2rem;
	}

	/* h3を含む子section */
	#under_system .sec_parent > .sec_child:first-of-type,
	#under_privacypolicy .sec_parent > .sec_child:first-of-type,
	#under_legal .sec_parent > .sec_child:first-of-type,
	#under_agreement .sec_parent > .sec_child:first-of-type{
		margin-top: 35px;
	}
	#under_system .sec_parent > .sec_child ,
	#under_privacypolicy .sec_parent > .sec_child ,
	#under_legal .sec_parent > .sec_child ,
	#under_agreement .sec_parent > .sec_child {
		margin-top: 25px;
	}
	#under_system .sec_child h3,
	#under_privacypolicy .sec_child h3,
	#under_legal .sec_child h3,
	#under_agreement .sec_child h3{
		font-size: 1.5rem;
	}
	#under_system .sec_child > *:not(h3),
	#under_privacypolicy .sec_child > *:not(h3),
	#under_legal .sec_child > *:not(h3),
	#under_agreement .sec_child > *:not(h3){
		margin-top: 15px;
	}
	#under_system .sec_child p,
	#under_privacypolicy .sec_child p,
	#under_legal .sec_child p,
	#under_agreement .sec_child p{
		font-size: 1.2rem;
	}
	#under_system .sec_child dt ,
	#under_privacypolicy .sec_child dt ,
	#under_legal .sec_child dt ,
	#under_agreement .sec_child dt {
		font-size: 1.3rem;
	}
	#under_privacypolicy .sec_child dd ,
	#under_privacypolicy .sec_child dd ,
	#under_legal .sec_child dd ,
	#under_agreement .sec_child dd {
		font-size: 1.2rem;
	}

	/* 改訂 */
	#under_system .sec_parent .revision,
	#under_privacypolicy .sec_parent .revision,
	#under_legal .sec_parent .revision,
	#under_agreement .sec_parent .revision{
		margin-top: 20px;
		font-size: 1.2rem;
	}
}



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

	初めての方へ

==========================================================================================================================================================================================================================================================================================================================*/
#under_first .h1{
	background-image: url(../a_images/first/title.jpg);
}

/* 共通事項 */
#under_first .pankuzu{
	background-color: var(--color-gray);
}
#under_first em {
    background-image: linear-gradient(transparent 50%, rgba(196, 153, 61, 0.3) 50%);
}
/*============================================================================================================================================================
==============================================================================================================================================================

	1.concept

==============================================================================================================================================================
============================================================================================================================================================*/
#under_first #concept{
	padding: 150px 0 185px;
	background: 
	url(../a_images/first/bg1.svg) no-repeat left calc(50%) top 60px,
	var(--color-gray);
}
/*================================   h2   ================================*/
#under_first #concept h2[lang="en"]{
	color: var(--color-gray);
}
#under_first #concept .title_h2 p {
	color: var(--color-base);
}
/*================================   intro   ================================*/
#under_first #concept .intro{
	margin-top: 60px;
	text-align: center;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 2.4rem;
	line-height: 1.8;
}
#under_first #concept .intro span{
	color: var(--color-base);
}
/*================================   ol list   ================================*/
#under_first #concept ol{
	margin: 0;
	padding: 0;
	margin-top: 150px;
	list-style: none;
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 80px 70px;
}
#under_first #concept ol li{
	width: 392px;
	height: 392px;
	padding-top: 40px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	background-color: #e6e6e6;
	position: relative;
	border-radius: 100%;
    counter-increment: mycounter;
}
#under_first #concept ol li::before,
#under_first #concept ol li::after{
	width: 100%;
	display: block;
	position: absolute;
	top: -20px;
    content: counter(mycounter, decimal-leading-zero);
	font-family: var(--font-en);
	font-size: 10.6rem;
	line-height: 1;
}
#under_first #concept ol li::before{
	color: #fff;
	z-index: 2;
}
#under_first #concept ol li::after{
	-webkit-text-stroke: 4px var(--color-base);
    mix-blend-mode: multiply;
    text-shadow: -2px 3px 0px var(--color-base);
	z-index: 1;
}
/*========== dl ==========*/
#under_first #concept ol li dl{
	font-size: 1.8rem;
	line-height: 1.8;
}
#under_first #concept ol li dl dt{
	padding-bottom: 50px;
	background: url(../a_images/first/arrow_bottom.svg) no-repeat bottom 17px center;
}
#under_first #concept ol li dl dd{
	font-weight: var(--weight-bold);
	color: var(--color-base);
	font-size: 1.8rem;
}

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

	concept スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_first #concept{
		padding: 35px 0 90px;
		background: var(--color-gray);
	}
	/*================================   intro   ================================*/
	#under_first #concept .intro{
		margin-top: 30px;
		font-size: 1.4rem;
		line-height: 1.8;
	}
	/*================================   ol list   ================================*/
	#under_first #concept ol{
		margin-top: 80px;
		display: block;
		text-align: center;
	}
	#under_first #concept ol li{
		margin: 0 auto; 
		width: 268px;
		height: 268px;
		padding-top: 35px;
	}
	#under_first #concept ol li + li{
		margin-top: 50px;
	}
	#under_first #concept ol li::before,
	#under_first #concept ol li::after{
		top: -30px;
		font-size: 8.7rem;
	}
	/*========== dl ==========*/
	#under_first #concept ol li dl{
		font-size: 1.3rem;
		line-height: 1.8;
	}
	#under_first #concept ol li dl dt{
		padding-bottom: 30px;
		background: url(../a_images/first/arrow_bottom.svg) no-repeat bottom 8px center;
		background-size: 25px auto;
	}
	#under_first #concept ol li dl dd{
		font-size: 1.3rem;
		letter-spacing: 0.1em;
	}
}




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

	2.UEHARA IS

==============================================================================================================================================================
============================================================================================================================================================*/
#under_first #uehara{
	padding-top: 135px;
	padding-bottom: 100px;
	position: relative;
	background: url(../a_images/first/uehara_bg.svg) no-repeat left calc(50% + 50px) bottom 150px;
}
#under_first #uehara::before {
    content: "";
    width: 100%;
    height: 233px;
    position: absolute;
    background: url(../a_images/wave_white.svg) repeat-x top center;
    left: 0;
    bottom: 100%;
}
/*================================   h2   ================================*/
#under_first #uehara h2[lang="en"]{
	color: #fff;
}
#under_first #uehara .title_h2 p {
	color: var(--color-base);
}
/*================================   intro   ================================*/
#under_first #uehara .intro{
	margin-top: 80px;
	min-height: 445px;
	position: relative;
	display: flex;
	align-items: center;
}
#under_first #uehara .intro .img_wrap{
	position: absolute;
	left: -210px;
	width: 695px;
	height: 445px;
}
#under_first #uehara .intro .img_wrap p{
	position: absolute;
    top: -5px;
    right: 30px;
    writing-mode: vertical-rl;
	text-orientation: upright;
    color: #fff;
}
#under_first #uehara .intro .img_wrap p span {
	margin: 0 5px;
	display: inline-block;
	padding: 5px 0 15px;
	color: var(--color-black);
    background-color: #fff;
	font-size: 2.8rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#under_first #uehara .intro .img_wrap img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
#under_first #uehara .intro dl{
	margin-left: auto;
	padding-left: 60px;
	width: 50%;
}
#under_first #uehara .intro dl dt{
    display: flex;
    align-items: center;
	color: var(--color-base);
}
#under_first #uehara .intro dl dt span[lang="ja"]{
	font-size: 3.8rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#under_first #uehara .intro dl dt span[lang="en"]{
	margin-left: 17px;
	font-size: 1.6rem;
}
#under_first #uehara .intro dl dd{
	margin-top: 45px;
	line-height: 1.8;
	font-size: 1.6rem;
}
/*========== 監修 ==========*/
#under_first #uehara .supervision{
	margin-top: 60px;
	padding: 35px 45px 30px;
	position: relative;
	background-color: var(--color-gray);
	clip-path: polygon(100% 0, 100% calc(100% - 30px), calc(100% - 30px) 100%, 0 100%, 0 0);
}
#under_first #uehara .supervision::before {
    content: "";
    width: 30px;
    height: 30px;
    position: absolute;
    z-index: 2;
    bottom: 0;
    right: 0;
    background: linear-gradient(-45deg, rgb(255 255 255 / 0) 50%, rgb(188 185 176 / 1) 50%);
}
#under_first #uehara .supervision h3{
	text-align: center;
	font-size: 2.8rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	color: var(--color-base);
}
#under_first #uehara .supervision .list_wrap{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
#under_first #uehara .supervision .list_wrap > figure,
#under_first #uehara .supervision .list_wrap > div.text{
	margin-top: 25px;
	width: 50%;
	font-size: 1.6rem;
	line-height: 1.8;
}
#under_first #uehara .supervision .list_wrap > figure{
	display: flex;
	align-items: center;
}
#under_first #uehara .supervision .list_wrap > figure img{
	width: 130px;
}
#under_first #uehara .supervision .list_wrap > figure figcaption{
	padding-left: 15px;
	width: calc(100% - 130px);
}
#under_first #uehara .supervision .list_wrap > figure figcaption dt{
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 1.8rem;
}
#under_first #uehara .supervision .list_wrap > figure figcaption dd{
	margin-top: 10px;
}
#under_first #uehara .supervision .list_wrap > div.text{
	letter-spacing: 0.05em;
}
/*========== ボタン ==========*/
#under_first #uehara .btn_wrap{
	margin-top: 105px;
}
/*==============================================================================

	UEHARA IS スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_first #uehara{
		padding-top: 30px;
		padding-bottom: 60px;
		background: none;
	}
	#under_first #uehara::before {
        height: 122px;
		background: url(../a_images/sp_wave_white.svg) repeat-x top left calc(50% + 110px);
	}
	/*================================   intro   ================================*/
	#under_first #uehara .intro{
		margin-top: 30px;
		min-height: auto;
		flex-direction: column;
	}
	#under_first #uehara .intro .img_wrap{
		position: relative;
		left: 0;
		width: calc(100% + 40px);
		height: auto;
	}
	#under_first #uehara .intro .img_wrap p{
		top: 0px;
		right: 20px;
	}
	#under_first #uehara .intro .img_wrap p span {
		margin: 0 5px;
		padding: 5px 0 15px;
		font-size: 3.5vw;
	}
	#under_first #uehara .intro dl{
		margin-top: 20px;
		margin-left: 0;
		padding-left: 0px;
		width: 100%;
	}
	#under_first #uehara .intro dl dt{
		align-items: baseline;
		justify-content: center;
	}
	#under_first #uehara .intro dl dt span[lang="ja"]{
		font-size: 2.8rem;
	}
	#under_first #uehara .intro dl dt span[lang="en"]{
		margin-left: 10px;
		font-size: 1rem;
	}
	#under_first #uehara .intro dl dd{
		margin-top: 20px;
		font-size: 1.3rem;
	}
	/*========== 監修 ==========*/
	#under_first #uehara .supervision{
		margin-top: 30px;
		padding: 35px 20px 50px;
	}
	#under_first #uehara .supervision h3{
		font-size: 1.8rem;
	}
	#under_first #uehara .supervision .list_wrap{
		flex-direction: column;
	}
	#under_first #uehara .supervision .list_wrap > figure,
	#under_first #uehara .supervision .list_wrap > div.text{
		margin-top: 30px;
		width: 100%;
		font-size: 1.3rem;
	}
	#under_first #uehara .supervision .list_wrap > figure{
		flex-direction: column;
	}
	#under_first #uehara .supervision .list_wrap > figure figcaption{
		margin-top: 20px;
		padding-left: 0px;
		width: calc(100%);
	}
	#under_first #uehara .supervision .list_wrap > figure figcaption dt{
		font-size: 1.5rem;
		line-height: 1.5;
	}
	#under_first #uehara .supervision .list_wrap > figure figcaption dd{
		margin-top: 10px;
	}
	#under_first #uehara .supervision .list_wrap > div.text{
		letter-spacing: 0.05em;
	}
	/*========== ボタン ==========*/
	#under_first #uehara .btn_wrap{
		margin-top: 50px;
	}
	#under_first #uehara .btn_wrap a{
		width: 240px;
	}
}



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

	3.MERIT

==============================================================================================================================================================
============================================================================================================================================================*/
#under_first #merit{
	padding-top: 135px;
	padding-bottom: 400px;
	position: relative;
	background: 
	url(../a_images/first/merit_bg.svg) no-repeat left calc(50%) top -40px,
	var(--color-base);
}
#under_first #merit .inner{
	padding: 120px 0;
	position: relative;
	background-color: #fff;
	text-align: center;
	clip-path: polygon(calc(100% - 70px) 0, 100% 70px, 100% 100%, 0 100%, 0 0);
}
#under_first #merit .inner::before{
	content:"";
	width: 70px;
	height: 70px;
	position: absolute;
	top: 0;
	right: 0;
	clip-path: polygon(0 0, 0% 100%, 100% 100%);
	background-color: #e1cc9e;
}
/*================================   h2   ================================*/
#under_first #merit h2[lang="en"]{
	color: #fff;
}
#under_first #merit .title_h2 p {
	color: var(--color-base);
}
/*================================   merit ol list   ================================*/
#under_first #merit ol{
	margin-top: 75px;
	list-style: none;
}
#under_first #merit ol li + li{
	margin-top: 40px;
}
#under_first #merit ol li{
	padding-top: 80px;
	position: relative;
}
#under_first #merit ol li::before{
	content: "";
	width: 50px;
	height: 54px;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	background-size: 100% auto;
}
#under_first #merit ol li:nth-of-type(1):before{
	background-image: url(../a_images/first/num1.svg);
}
#under_first #merit ol li:nth-of-type(2):before{
	background-image: url(../a_images/first/num2.svg);
}
#under_first #merit ol li:nth-of-type(3):before{
	background-image: url(../a_images/first/num3.svg);
}
#under_first #merit ol li:nth-of-type(4):before{
	background-image: url(../a_images/first/num4.svg);
}
#under_first #merit ol li dt{
	color: var(--color-base);
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 3rem;
}
#under_first #merit ol li dd{
	margin-top: 10px;
	font-size: 1.6rem;
	line-height: 1.8;
}
#under_first #merit ol li dd em {
    background-image: linear-gradient(transparent 50%, rgba(196, 153, 61, 0.3) 50%);
}
/*==============================================================================

	MERIT スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_first #merit{
		padding: 30px 20px 110px;
		background: var(--color-base);
	}
	#under_first #merit .inner{
		padding: 40px 20px;
		clip-path: polygon(calc(100% - 30px) 0, 100% 30px, 100% 100%, 0 100%, 0 0);
	}
	#under_first #merit .inner::before{
		width: 30px;
		height: 30px;
	}
	/*================================   h2   ================================*/
	#under_first #merit .title_h2 [lang="en"] .deco::after {
        width: 30px;
        height: 38px;
        right: -30px;
        bottom: -12px;
        top: unset;
        background-image: url(../a_images/h2_deco_gold_right.svg);
    }
	/*================================   merit ol list   ================================*/
	#under_first #merit ol{
		padding: 0;
		margin-top: 30px;
		list-style: none;
	}
	#under_first #merit ol li + li{
		margin-top: 25px;
	}
	#under_first #merit ol li{
		padding-top: 45px;
	}
	#under_first #merit ol li::before{
		width: 30px;
		height: 33px;
		background-size: 100% auto;
		background-repeat: no-repeat;
	}
	#under_first #merit ol li dt{
		font-size: 2.5rem;
	}
	#under_first #merit ol li dd{
		font-size: 1.3rem;
	}
}


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

	4.gray_wrap

==============================================================================================================================================================
============================================================================================================================================================*/
#under_first .gray_wrap{
	padding-top: 135px;
	padding-bottom: 260px;
	position: relative;
	background-color: var(--color-gray);
	background-image: url(../a_images/first/bg_gray_wrap.svg),url(../a_images/first/bg_gray_wrap.svg),url(../a_images/first/bg_gray_wrap_bottom.svg);
	background-repeat:  no-repeat;
	background-position: 
	top 300px left calc(50% + 40px),
	top 2200px left calc(50% + 40px),
	bottom 170px left calc(50%);
}
#under_first .gray_wrap::before {
    content: "";
    width: 100%;
    height: 233px;
    position: absolute;
    background: url(../a_images/wave_gray_line.svg) repeat-x top center;
    left: 0;
    bottom: 100%;
}
/*==============================================================================

	MERIT スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_first .gray_wrap{
		padding: 50px 20px 80px;
		background: var(--color-gray);
	}
	#under_first .gray_wrap::before {
		height: 122px;
		background: url(../a_images/sp_wave_gray_line.svg) repeat-x top left calc(50% + 110px);
	}
}


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

	5.online

==============================================================================================================================================================
============================================================================================================================================================*/
#under_first #online .inner{
	padding: 80px 20px;
	background-color: #fff;
	position: relative;
	text-align: center;
}
#under_first #online .inner::before {
    content: "";
    width: 70px;
    height: 70px;
    position: absolute;
    top: 0;
    right: 0;
    background: linear-gradient(225deg, var(--color-gray) 50%, rgba(225, 204, 158, 1) 50%);
}
/*================================   h2   ================================*/
#under_first #online h2[lang="en"]{
	color: #fff;
}
#under_first #online .title_h2 p {
	color: var(--color-base);
}
/*================================   intro   ================================*/
#under_first #online .intro{
	margin-top: 40px;
	font-size: 1.6rem;
	line-height: 2;
}
/*================================   online   ================================*/
#under_first #online h3{
	font-size: 2.8rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#under_first #online .fukidashi_wrap{
	margin-bottom: 20px;
}
#under_first #online .fukidashi_wrap span{
	color: var(--color-base);
}
/*========== point */
#under_first #online .point{
	margin: 100px auto 0;
	width: 640px;
	display: flex;
	gap: 0 20px;
	justify-content: center;
	position: relative;
}
#under_first #online .point::before{
	content:"";
	position: absolute;
	width: 258px;
	height: 145px;
	background: url(../a_images/first/online_point.svg);
	top: -85px;
	left: -85px;
	z-index: 2;
}
#under_first #online .point li{
	padding: 30px 20px 35px;
	width: 200px;
	position: relative;
	background-color: var(--color-gray);
	z-index: 1;
}
#under_first #online .point li::before {
    content: "";
    width: 30px;
    height: 30px;
    position: absolute;
    bottom: 0;
    right: 0;
    background: linear-gradient(135deg, #bcb9b0 50%, #fff 50%);
	z-index: 2;
}
#under_first #online .point li dl{
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
    flex-direction: column;
}
#under_first #online .point li dl dt{
    height: 3em;
	text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
	line-height: 1.6;
	font-size: 2rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	color: var(--color-base);
}
#under_first #online .point li dl dd {
    margin-top: 15px;
    flex-grow: 1;
	text-align: center;
    line-height: 1.8;
    font-size: 1.4rem;
}
#under_first #online .point_note {
    margin-top: 40px;
	text-align: center;
    font-size: 1.6rem;
}
/*========== price */
#under_first #online .online_price {
	margin-top: 70px;
}
#under_first #online .online_price .price_explane{
	margin: 40px auto 0;
	width: 500px;
}
#under_first #online .online_price .price_explane > div{
	text-align: center;
	font-weight: var(--weight-bold);
}
#under_first #online .online_price .price_explane .top,
#under_first #online .online_price .price_explane .bottom{
	background-color: var(--color-gray);
}
#under_first #online .online_price .price_explane .top{
	padding: 15px 0;
	font-family: var(--font-ver1);
	font-size: 3.3rem;
	color: var(--color-base);
	letter-spacing: 0.15em;
}
#under_first #online .online_price .price_explane .top span{
	font-size: 2rem;
}
#under_first #online .online_price .price_explane .middle{
	padding: 15px 0;
	font-size: 4rem;
	line-height: 1;
}
#under_first #online .online_price .price_explane .bottom{
	padding: 25px 0;
}
#under_first #online .online_price .price_explane .bottom > span{
	display: block;
}
#under_first #online .online_price .price_explane .bottom .text1{
	font-size: 2rem;
}
#under_first #online .online_price .price_explane .bottom .text2{
	font-size: 3rem;
	color: var(--color-base);
	letter-spacing: 0.15em;
}
#under_first #online .online_price .price_explane .bottom .text2 span{
	margin: 0 10px;
	font-size: 6rem;
}
#under_first #online .online_price .price_explane .bottom .text2 span.size_s{
	margin: 0;
	font-size: 1.2rem;
	letter-spacing: 0.1em;
}
#under_first #online .online_price .price_explane .note{
	margin-top: 8px;
	text-align: right;
	font-weight: normal;
	font-size: 1.4rem;
}
/*========== たとえば */
#under_first #online .online_exmaple{
	margin: 35px auto 0;
	width: 620px;
}
#under_first #online .online_exmaple > p{
	margin-bottom: 5px;
	font-size: 2.2rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	color: var(--color-base);
}
#under_first #online .online_exmaple .online_exmaple_box + .online_exmaple_box{
	margin-top: 30px;
}
#under_first #online .online_exmaple .online_exmaple_box .fukidashi{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#under_first #online .online_exmaple .online_exmaple_box .fukidashi p{
	width: 440px;
	min-height: 136px;
	display: flex;
	position: relative;
	align-items: center;
	justify-content: center;
	font-size: 1.6rem;
	font-weight: var(--weight-bold);
	background-color: var(--color-gray);
	border-radius: 15px;
	line-height: 1.8;
}
#under_first #online .online_exmaple .online_exmaple_box .fukidashi p::after{
	content: "";
	width: 30px;
	height: 16px;
	position: absolute;
	top: 50%;
	left: calc(100% - 1px);
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	transform: translateY(-50%);
	background-color: inherit;
}
#under_first #online .online_exmaple .online_exmaple_box .text{
	margin-top: 20px;
	font-size: 2rem;
	font-weight: var(--weight-bold);
	line-height: 1.8;
}
#under_first #online .online_exmaple .online_exmaple_box .text span{
	color: var(--color-base);
}
/*========== 動画 */
#under_first #online .online_video{
	margin-top: 80px;
}
#under_first #online .online_video .online_video_content {
	margin: 20px auto 0;
	width: 484px;
	height: 283px;
	background-color: #bcb9b0;
}
#under_first #online .online_video .btn_wrap {
	margin-top: 60px;
}
#under_first #online .online_video .btn_wrap a{
	width: 380px;
}
#under_first #online .online_video .online_video_note{
	margin-top: 20px;
	font-size: 1.4rem;
}
/*==============================================================================

	online スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_first #online .inner{
		padding: 50px 20px 30px;
	}
	#under_first #online .inner::before {
		width: 30px;
		height: 30px;
	}
	/*================================   intro   ================================*/
	#under_first #online .intro{
		margin-top: 20px;
		font-size: 1.3rem;
	}
	/*================================   online   ================================*/
	#under_first #online h3{
		font-size: 2.5rem;
	}
	#under_first #online .fukidashi_wrap{
		margin-bottom: 10px;
	}
	/*========== point */
	#under_first #online .point{
		margin: 40px auto 0;
		width: 100%;
		flex-direction: column;
		gap: 20px 0;
	}
	#under_first #online .point::before{
		width: 146px;
		height: 82px;
		top: -40px;
		left: -10px;
		background-size: 146px auto;
	}
	#under_first #online .point li{
		width: 100%;
	}
	#under_first #online .point li dl{
		height: 100%;
		display: flex;
	}
	#under_first #online .point li dl dt{
		height: auto;
		font-size: 1.9rem;
	}
	#under_first #online .point li dl dd {
		font-size: 1.3rem;
	}
	#under_first #online .point_note {
		margin-top: 30px;
	}
	/*========== price */
	#under_first #online .online_price {
		margin-top: 65px;
	}
	#under_first #online .online_price .price_explane{
		margin: 20px auto 0;
		width: 100%;
	}
	#under_first #online .online_price .price_explane .top{
		padding: 10px 20px;
		font-size: 1.7rem;
	}
	#under_first #online .online_price .price_explane .top span{
		font-size: 1.2rem;
	}
	#under_first #online .online_price .price_explane .middle{
		padding: 5px 20px;
	}
	#under_first #online .online_price .price_explane .bottom{
		padding: 15px 20px;
	}
	#under_first #online .online_price .price_explane .bottom .text1{
		font-size: 1.2rem;
	}
	#under_first #online .online_price .price_explane .bottom .text2{
		font-size: 1.7rem;
	}
	#under_first #online .online_price .price_explane .bottom .text2 span{
		margin: 0 10px;
		font-size: 3.4rem;
	}
	#under_first #online .online_price .price_explane .note{
		font-size: 1.1rem;
	}
	/*========== たとえば */
	#under_first #online .online_exmaple{
		margin: 45px auto 0;
		width: 100%;
	}
	#under_first #online .online_exmaple > p{
		margin-bottom: 10px;
		font-size: 1.8rem;
	}
	#under_first #online .online_exmaple .online_exmaple_box + .online_exmaple_box{
		margin-top: 25px;
	}
	#under_first #online .online_exmaple .online_exmaple_box .fukidashi{
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	#under_first #online .online_exmaple .online_exmaple_box .fukidashi p{
		margin-right: 22px;
		padding: 20px;
		width: calc(100% - 90px - 22px);
		min-height: auto;
		font-size: 1.4rem;
	}
	#under_first #online .online_exmaple .online_exmaple_box .fukidashi p::after{
		width: 20px;
		height: 14px;
	}
	#under_first #online .online_exmaple .online_exmaple_box .fukidashi img{
		width: 90px;
		height: auto;
	}
	#under_first #online .online_exmaple .online_exmaple_box .text{
		margin-top: 15px;
		font-size: 1.4rem;
	}
	/*========== 動画 */
	#under_first #online .online_video{
		margin-top: 40px;
	}
	#under_first #online .online_video .online_video_content {
		margin: 20px auto 0;
		width: 100%;
		height: auto;
		aspect-ratio: 16 / 9;
	}
	#under_first #online .online_video .btn_wrap {
		margin-top: 50px;
	}
	#under_first #online .online_video .btn_wrap a{
		width: 100%;
	}
	#under_first #online .online_video .online_video_note{
		margin-top: 10px;
		font-size: 1rem;
	}
}




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

	6.price

==============================================================================================================================================================
============================================================================================================================================================*/
#under_first #price{
	margin-top: 90px;
}
/*================================   circle   ================================*/
#under_first #price .circle{
	margin: auto;
	width: 725px;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1 / 1;
	position: relative;
	text-align: center;
    letter-spacing: 0.3em;
}
#under_first #price .circle::after{
	content: "";
	width: 725px;
	aspect-ratio: 1 / 1;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	background-color: #fff;
	border-radius: 100%;
}
#under_first #price .circle > div{
	position: relative;
	z-index: 2;
}
#under_first #price .circle .fukidashi_wrap span{
	color: var(--color-base);
}
#under_first #price .circle h2{
	margin-top: 5px;
	font-size: 2.8rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#under_first #price .circle .price_num{
	font-size: 5.3rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
    line-height: 1.1;
}
#under_first #price .circle .price_num span{
	margin-left: 10px;
	font-size: 3.3rem;
}
#under_first #price .circle .price_text{
	margin-top: 5px;
	font-size: 2rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
/*========== circle top */
#under_first #price .circle .top .price_note{
	margin-top: 15px;
	font-size: 1.4rem;
}
/*========== circle middle */
#under_first #price .circle .middle {
	margin-top: 35px;
}
#under_first #price .circle .middle .price_note{
	margin-top: 5px;
	font-size: 2rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
/*========== circle bottom */
#under_first #price .circle .bottom {
	margin-top: 30px;
	font-size: 2.2rem;
	font-weight: var(--weight-bold);
	color: var(--color-base);
}
/*========== btn */
#under_first #price .btn_wrap_note{
	margin-top: 70px;
	text-align: center;
	font-size: 1.8rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	color: var(--color-base);
	line-height: 1.8;
	letter-spacing: 0.2em;
}
#under_first #price .btn_wrap {
	display: flex;
	justify-content: center;
	margin-top: 20px;
}
#under_first #price .btn_wrap a {
	width: 380px;
}
#under_first #price .btn_wrap a + a {
	margin-left: 20px;
}
/*==============================================================================

	price スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_first #price{
		margin-top: 35px;
	}
	/*================================   circle   ================================*/
	#under_first #price .circle{
		margin: auto;
		width: 100%;
		height: 584px;
		letter-spacing: 0.15em;
	}
	#under_first #price .circle::after{
		width: 584px;
	}
	#under_first #price .circle h2{
		margin-top: 5px;
		font-size: 2rem;
	}
	#under_first #price .circle .price_num{
		font-size: 4rem;
	}
	#under_first #price .circle .price_num span{
		font-size: 2.2rem;
	}
	#under_first #price .circle .price_text{
		font-size: 1.6rem;
	}
	/*========== circle top */
	#under_first #price .circle .top .price_note{
		font-size: 1rem;
	}
	/*========== circle middle */
	#under_first #price .circle .middle {
		margin-top: 30px;
	}
	#under_first #price .circle .middle .price_note{
		font-size: 1.6rem;
	}
	/*========== circle bottom */
	#under_first #price .circle .bottom {
		margin-top: 20px;
		font-size: 1.8rem;
	}
	/*========== btn */
	#under_first #price .btn_wrap_note{
		margin-top: 30px;
		font-size: 1.4rem;
		letter-spacing: 0.1em;
	}
	#under_first #price .btn_wrap{
		margin-top: 30px;
	}
	#under_first #price .btn_wrap a{
		width: 240px;
	}
}

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

	7.voice

==============================================================================================================================================================
============================================================================================================================================================*/
#under_first #voice{
	margin-top: 100px;
}
#under_first #voice .inner{
	padding-top: 100px;
	position: relative;
}
#under_first #voice .inner::before {
    content: "";
    width: 100%;
    height: 51px;
    position: absolute;
    top: -51px;
    left: 0;
    background: url(../a_images/first/line.svg);
}
/*================================   h2   ================================*/
#under_first #voice h2[lang="en"]{
	color: var(--color-gray);
}
#under_first #voice .title_h2 p {
	color: var(--color-base);
}
/*================================   voice_box   ================================*/
#under_first #voice .voice_box{
	margin-top: 70px;
	padding: 60px;
	display: flex;
	position: relative;
	align-items: center;
	background-color: #fff;
}
#under_first #voice .voice_box::before {
    content: "";
    width: 30px;
    height: 30px;
    position: absolute;
    bottom: 0;
    right: 0;
    background: linear-gradient(135deg, #bcb9b0 50%, var(--color-gray) 50%);
    z-index: 2;
}
#under_first #voice .voice_box + .voice_box{
	margin-top: 20px;
}
#under_first #voice .voice_box figure{
	width: 132px;
	text-align: center;
}
#under_first #voice .voice_box figure figcaption{
	margin-top: 15px;
	font-size: 1.6rem;
}
#under_first #voice .voice_box dl{
	padding-left: 40px;
	width: calc(100% - 132px);
}
#under_first #voice .voice_box dl dt{
	color: var(--color-base);
	font-size: 2.6rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#under_first #voice .voice_box dl dd{
	margin-top: 30px;
	line-height: 1.8;
}
/*==============================================================================

	voice スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_first #voice{
		margin-top: 70px;
	}
	#under_first #voice .inner{
		padding: 70px 0 0;
	}
	#under_first #voice .inner::before {
		width: calc(100% + 40px);
		height: 1px;
		top: 0px;
		left: -20px;
		background: var(--color-base);
	}
	/*================================   voice_box   ================================*/
	#under_first #voice .voice_box{
		margin-top: 25px;
		padding: 20px;
		flex-direction: column;
	}
	#under_first #voice .voice_box + .voice_box{
		margin-top: 20px;
	}
	#under_first #voice .voice_box figure{
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	#under_first #voice .voice_box figure img{
		width: 62px;
		height: auto;
		order: 2;
	}
	#under_first #voice .voice_box figure figcaption{
		margin-top: 0px;
		margin-right: 10px;
		font-size: 1.3rem;
		order: 1;
	}
	#under_first #voice .voice_box dl{
		margin-top: 10px;
		padding-left: 0px;
		width: calc(100%);
	}
	#under_first #voice .voice_box dl dt{
		font-size: 1.8rem;
		text-align: center;
	}
	#under_first #voice .voice_box dl dd{
		margin-top: 15px;
	}
}

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

	8.join

==============================================================================================================================================================
============================================================================================================================================================*/
#under_first #join {
    padding-top: 170px;
    padding-bottom: 330px;
    position: relative;
    background-color: var(--color-base);
	background-image: url(../a_images/first/join_bg_text.svg);
	background-repeat: no-repeat;
	background-position: left calc(50% + 320px) bottom 100px;
	z-index: 1;
}
#under_first #join::before {
    content: "";
    width: 100%;
    height: 233px;
    position: absolute;
    background: url(../a_images/wave_gold_line.svg) repeat-x top center;
    left: 0;
    bottom: 100%;
	z-index: 1;
}
#under_first #join::after {
    content: "";
    width: 100%;
	height: 70%;
	position: absolute;
	left: 0;
	bottom: 0;
	background: linear-gradient(180deg,rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
	mix-blend-mode: multiply;
	z-index: 2;
}
#under_first #join .inner{
	position: relative;
	z-index: 3;
}
#under_first #join h2{
	color: var(--color-base);
}
#under_first #join .calender{
	width: 100%;
	background-color: #fff;
}
#under_first #join .calender .calender_wrap {
	padding: 30px;
}
#under_first #join .btn_wrap{
	margin-top: 45px;
	display: flex;
	justify-content: center;
	gap: 0 50px;
}
#under_first #join .btn_wrap .left a{
	border-color: #fff;
	background-color: #fff;
	color: var(--color-base);
}
#under_first #join .btn_wrap .left p{
	margin-top: 15px;
	color: #fff;
	font-size: 1.4rem;
}
#under_first #join .btn_wrap .right a{
	border-color: #fff;
	color: #fff;
}
#under_first #join .btn_wrap .right a::after{
	background-image: url(../a_images/btn_wrap_arrow_white.svg);
}
/*==============================================================================

	voice スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_first #join {
		padding-top: 40px;
		padding-bottom: 160px;
		background-size: 300px auto;
		background-position: left calc(50% + 20px) bottom 5px;
	}
	#under_first #join::before {
		height: 122px;
		background: url(../a_images/sp_wave_gold_line.svg) repeat-x top left calc(50% + 110px);
	}
	#under_first #join::after {
		content: none;
	}
	#under_first #join .inner{
		position: relative;
		z-index: 3;
	}
	#under_first #join h2{
		color: var(--color-base);
	}
	#under_first #join .calender{
		margin-top: 30px;
	}
	#under_first #join .btn_wrap{
		margin-top: 25px;
		flex-direction: column;
		gap: 20px 0;
	}
	#under_first #join .btn_wrap .left p{
		margin-top: 10px;
		font-size: 1rem;
	}
	#under_first #join .btn_wrap .right a{
		background-color: var(--color-base);
	}
	#under_first #join .btn_wrap a{
		width: 280px;
	}
}


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

	講師紹介

==========================================================================================================================================================================================================================================================================================================================*/
/*==================== 共通事項 /*====================*/
#under_teacher .h1 {
    background-image: url(../a_images/teacher/title.jpg);
}
#under_teacher .pankuzu{
	background-color: #fff;
	margin-bottom: 70px;
}
#under_teacher .h1::before {
    background: url(../a_images/wave_white.svg) repeat-x top center;
}

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

	スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_teacher .h1::before {
		background: url(../a_images/sp_wave_white.svg) repeat-x top left calc(50% + 110px);
	}
}


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

	1.イントロ

==============================================================================================================================================================
============================================================================================================================================================*/
#under_teacher #intro h2{
	font-size: 1.8rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-medium);
	text-align: center;
}
#under_teacher #intro .fukidashi_wrap{
	margin-top: 60px;
	font-size: 1.8rem;
	font-family: var(--font-ver2);
	font-weight: var(--weight-bold);
	color: var(--color-base);
	text-align: center;
}
#under_teacher #intro .cate_list{
	margin-top: 20px;
	display: flex;
	justify-content: space-between;
}
#under_teacher #intro .cate_list li span{
	min-width: 110px;
	padding: 10px 15px;
	display: block;
	border: 2px solid var(--color-base);
	border-radius: 30px;
	color: var(--color-base);
	text-align: center;
	font-size: 1.4rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-medium);
	line-height: 1;
	letter-spacing: 0.05em;
	cursor: pointer;
	transition: 500ms;
}
#under_teacher #intro .cate_list li span:hover{
	opacity: 0.6;
}
#under_teacher #intro .cate_list li.on span{
	color: #fff;
	position: relative;
	background-color: var(--color-base);
	pointer-events: none;
}
#under_teacher #intro .cate_list li.on span::after{
	content:"";
	width: 20px;
	height: 10px;
	position: absolute;
	left: 50%;
	top: 100%;
	transform: translateX(-50%);
	background-color: inherit;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
}
/*==============================================================================

	イントロ スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_teacher #intro h2{
		font-size: 1.5rem;
		line-height: 1.8;
	}
	#under_teacher #intro .fukidashi_wrap{
		margin-top: 15px;
	}
	#under_teacher #intro .fukidashi_wrap span{
		font-size: 1.3rem;
		letter-spacing: 0.1em;
	}
	#under_teacher #intro .cate_list{
		margin-top: 20px;
		flex-wrap: wrap;
		justify-content: center;
		gap: 18px 8px;
	}
	#under_teacher #intro .cate_list li:first-child{
		width: 100%;
		text-align: center;
	}
	#under_teacher #intro .cate_list li span:hover{
		opacity: 1;
	}
	#under_teacher #intro .cate_list li span{
		padding: 8px 15px;
		min-width: 100px;
		display: inline-block;
		text-align: center;
		font-size: 1rem;
	}
}


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

	2.スタッフリスト

==============================================================================================================================================================
============================================================================================================================================================*/
#under_teacher .staff_list_wrap{
	margin-top: 45px;
	padding: 45px 0 115px;
	background-color: var(--color-gray);
	background-image: url(../a_images/teacher/bg.svg);
	background-repeat: no-repeat;
	background-position: top -15px right -48px;
}

/* offがついていない中で最初以外の要素 */
#under_teacher .staff_list > div:not(.off):nth-of-type(n) ~ div:not(.off){
	margin-top: 170px;
	position: relative;
}
#under_teacher .staff_list > div:not(.off):nth-of-type(n) ~ div:not(.off)::before{
	content:"";
	width: 100%;
	height: 51px;
	position: absolute;
	top: -110px;
	left: 0;
	background: url(../a_images/teacher/line.svg);
}

#under_teacher .staff_list figure{
	display: flex;
}
#under_teacher .staff_list figcaption{
	width: calc(100% - 400px);
}

/*================================  スタッフ紹介  ================================*/
#under_teacher .staff_intro img{
	width: 400px;
	order: 1;
}
#under_teacher .staff_intro figcaption{
	padding-left: 30px;
	order: 2;
}
/*============= 名前 ==============*/
#under_teacher .staff_intro figcaption .staff_name{
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#under_teacher .staff_intro figcaption .staff_name .name{
	margin-top: 5px;
	font-size: 2.4rem;
	font-weight: var(--weight-bold);
}
#under_teacher .staff_intro figcaption .staff_name .name span[lang="ja"] + span[lang="en"]{
	margin-left: 25px;
}
/*============= カテゴリ ==============*/
.staff_intro figcaption .staff_cate{
	margin-top: 40px;
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
}
.staff_intro figcaption .staff_cate li{
	padding: 10px 20px;
	color: var(--color-base);
	border: 2px solid var(--color-base);
	border-radius: 30px;
	text-align: center;
	font-size: 1.8rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-medium);
	background-color: #fff;
}
/*============= テキスト ==============*/
#under_teacher .staff_intro figcaption .staff_text{
	margin-top: 40px;
	line-height: 2;
	letter-spacing: 0.05em;
	text-align: justify;
}

/*================================  スタッフ紹介 サブ  ================================*/
#under_teacher .staff_intro_sub{
	margin-top: 40px;
	align-items: flex-start;
}
#under_teacher .staff_intro_sub img{
	order: 2;
}
#under_teacher .staff_intro_sub figcaption{
	padding-right: 30px;
	order: 1;
	line-height: 1.8;
	letter-spacing: 0.05em;
	text-align: justify;
}
#under_teacher .staff_intro_sub figcaption .staff_biography{
	margin-top: 0;
}

/*================================  スタッフ紹介 バイオグラフィー  ================================*/
#under_teacher .staff_biography{
	margin-top: 40px;
}
#under_teacher .staff_biography dl + dl{
	margin-top: 40px;
}
#under_teacher .staff_biography dl dt{
	font-size: 1.8rem;
	font-weight: var(--weight-bold);
}
#under_teacher .staff_biography dl dd{
	margin-top: 5px;
	line-height: 1.8;
}


/*================================  担当講座  ================================*/
#under_teacher .seminar_list_wrap{
	margin: 45px auto 0;
	padding: 65px 90px 50px;
	position: relative;
	background-color: #fff;
	text-align: left;
	letter-spacing: 0.15em;
}
#under_teacher .seminar_list_wrap::before {
    content: "";
    width: 70px;
    height: 70px;
    position: absolute;
    top: 0;
    right: 0;
    background: linear-gradient(225deg, #f5f5f5 50%, rgba(216, 216, 215, 1) 50%);
}
#under_teacher .seminar_list_title{
	margin-bottom: 30px;
	color: var(--color-base);
	font-size: 2.4rem;
	font-weight: var(--weight-bold);
	text-align: center;
}
#under_teacher .seminar_list_wrap .seminar_list article{
	position: relative;
	z-index: 2;
}
#under_teacher .seminar_list_wrap .seminar_list article + article{
	margin-top: 65px;
}
#under_teacher .seminar_list_wrap .seminar_list .seminar_list_inner{
	padding: 35px;
	position: relative;
	background-color: var(--color-gray);
	clip-path: polygon(100% 0, 100% calc(100% - 30px), calc(100% - 30px) 100%, 0 100%, 0 0);
}
#under_teacher .seminar_list_wrap .seminar_list .seminar_list_inner::before {
    content: "";
    width: 30px;
    height: 30px;
    position: absolute;
    z-index: 2;
    bottom: 0;
    right: 0;
    background: linear-gradient(-45deg, rgb(255 255 255 / 0) 50%, rgb(216 216 216 / 1) 50%);
}
/* cate */
#under_teacher .seminar_list_wrap .seminar_list .cate{
	padding-left: 25px;
	color: var(--color-base);
	font-weight: var(--weight-bold);
	position: relative;
}
#under_teacher .seminar_list_wrap .seminar_list .cate::before{
	content:"";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
#under_teacher .seminar_list_wrap .seminar_list .cate.ftof_online{
	padding-left: 50px
}
#under_teacher .seminar_list_wrap .seminar_list .cate.ftof_online::before{
	width: 40px;
	height: 18px;
	background: 
	url(../a_images/top/icon_movie.svg) no-repeat right center,
	url(../a_images/top/icon_human.svg) no-repeat left center;
}
#under_teacher .seminar_list_wrap .seminar_list .cate.online{
	padding-left: 30px;
}
#under_teacher .seminar_list_wrap .seminar_list .cate.online::before{
	width: 18px;
	height: 14px;
	background: url(../a_images/top/icon_movie.svg) no-repeat right center;
}
#under_teacher .seminar_list_wrap .seminar_list .cate.ftof::before{
	width: 12px;
	height: 18px;
	background: url(../a_images/top/icon_human.svg) no-repeat left center;
}
/* h4 */
#under_teacher .seminar_list_wrap .seminar_list h4{
	margin-top: 20px;
	padding-bottom: 15px;
	text-align: center;
	color: var(--color-black);
	font-size: 1.8rem;
	font-weight: var(--weight-bold);
	line-height: 2;
	border-bottom: 2px solid var(--color-base);
}
/* info */
#under_teacher .seminar_list_wrap .seminar_list .info{
	margin-top: 10px;
	padding: 0 0 0 10px;
	display: flex;
	flex-wrap: wrap;
	color: var(--color-base);
}
#under_teacher .seminar_list_wrap .seminar_list .info li{
	margin-top: 5px;
	margin-right: 10px;
	padding-left: 19px;
	position: relative;
	letter-spacing: 0.1em;
}
#under_teacher .seminar_list_wrap .seminar_list .info li::before{
	content:"";
	top: 50%;
	left: 0;
	width: 16px;
	height: 15px;
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background-repeat: no-repeat;
	background-position: left center;
}
#under_teacher .seminar_list_wrap .seminar_list .info li.schedule::before{
	background-image: url(../a_images/top/icon_schedule.svg);
	background-size: 14px auto;
}
#under_teacher .seminar_list_wrap .seminar_list .info li.upload::before{
	background-image: url(../../images/icon_movie.svg);
	background-size: 16px auto;
}
#under_teacher .seminar_list_wrap .seminar_list .info li.time::before{
	background-image: url(../a_images/top/icon_time.svg);
	background-size: 14px auto;
}
#under_teacher .seminar_list_wrap .seminar_list .info li.location{
	padding-left: 15px;
}
#under_teacher .seminar_list_wrap .seminar_list .info li.location::before{
	background-image: url(../a_images/top/icon_location.svg);
	background-size: auto 14px;
}
#under_teacher .seminar_list_wrap .seminar_list .info li.teacher{
	padding-left: 15px;
}
#under_teacher .seminar_list_wrap .seminar_list .info li.teacher::before{
	background-image: url(../a_images/top/icon_human.svg);
	background-size: 10px auto;
}
#under_teacher .seminar_list_wrap .seminar_list .info li .num{
	font-family: var(--font-en);
	font-weight: var(--weight-medium);
}
/* タグ */
#under_teacher .seminar_list_wrap .seminar_list .tag{
	margin-top: 7px;
	margin-right: -13px;
	padding: 0 4px;
	display: flex;
	flex-wrap: wrap;
}
#under_teacher .seminar_list_wrap .seminar_list .tag li{
	margin-right: 13px;
	margin-top: 8px;
}
#under_teacher .seminar_list_wrap .seminar_list .tag li a{
	padding: 5px 17px;
	display: block;
	font-family: var(--font-ver1);
	font-size: 1.2rem;
	border: 1px solid var(--color-base);
	border-radius: 30px;
}
/* status */
#under_teacher .seminar_list_wrap .seminar_list .status{
	width: 90px;
	height: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border-radius: 100%;
	color: #fff;
	font-style: var(--font-ver1);
	font-weight: var(--weight-bold);
	position: absolute;
	top: -20px;
	right: -28px;
	z-index: 3;
	box-shadow: 3px 3px 0px 0px rgb(0 0 0 / 0.2);
}
#under_teacher .seminar_list_wrap .seminar_list .status_level1 .status{
	background-color: #4f700f;
}
#under_teacher .seminar_list_wrap .seminar_list .status_level2 .status{
	background-color: #ea5550;
}
#under_teacher .seminar_list_wrap .seminar_list .status_level3 .status{
	background-color: #3e3a39;
}
#under_teacher .seminar_list_wrap .seminar_list .status_level3::before{
	content:"";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-color: rgb( 62 58 57 / 0.3 );
	clip-path: polygon(100% 0, 100% calc(100% - 30px), calc(100% - 30px) 100%, 0 100%, 0 0);
	z-index: 2;
}
#under_teacher .seminar_list_wrap > .btn_wrap{
	margin-top: 30px;
}
#under_teacher .seminar_list_wrap > .btn_wrap a{
	width: 420px;
}
#under_teacher .seminar_list_wrap .seminar_list article .btn_wrap{
	margin-top: 30px;
}

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

	スタッフリスト スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_teacher .staff_list_wrap{
		margin-top: 40px;
		padding: 40px 0 110px;
		background-image: url(../images/bg.svg);
		background-repeat: no-repeat;
		background-position: top -15px right -48px;
		background-size: 150px auto;
	}
	
	/* offがついていない中で最初以外の要素 */
	#under_teacher .staff_list > div:not(.off):nth-of-type(n) ~ div:not(.off){
		margin-top: 55px;
	}
	#under_teacher .staff_list > div:not(.off):nth-of-type(n) ~ div:not(.off)::before{
		height: 1px;
		top: -25px;
		background: var(--color-base);
	}
	
	#under_teacher .staff_list figure{
		display: block;
	}
	#under_teacher .staff_list figcaption{
		width: calc(100%);
	}

	/*================================  スタッフ紹介  ================================*/
	#under_teacher .staff_intro{
		text-align: center;
	}
	#under_teacher .staff_intro img{
		max-width: 200px;
		width: 100%;
		height: auto;
	}
	#under_teacher .staff_intro figcaption{
		margin-top: 20px;
		padding-left: 0px;
		text-align: left;
	}
	/*============= 名前 ==============*/
	#under_teacher .staff_intro figcaption .staff_name .post{
		font-size: 1rem;
	}
	#under_teacher .staff_intro figcaption .staff_name .name{
		font-size: 1.5rem;
	}
	#under_teacher .staff_intro figcaption .staff_name .name span[lang="ja"] + span[lang="en"]{
		margin-left: 15px;
	}
	/*============= カテゴリ ==============*/
	#under_teacher .staff_intro figcaption .staff_cate{
		margin-top: 15px;
		gap: 10px;
	}
	#under_teacher .staff_intro figcaption .staff_cate li{
		padding: 8px 15px;
		font-size: 1rem;
	}
	/*============= テキスト ==============*/
	#under_teacher .staff_intro figcaption .staff_text{
		margin-top: 15px;
		font-size: 1.3rem;
	}

	/*================================  スタッフ紹介 サブ  ================================*/
	#under_teacher .staff_intro_sub img{
		width: 100%;
	}
	#under_teacher .staff_intro_sub figcaption{
		margin-top: 15px;
		padding-right: 0px;
		font-size: 1.3rem;
	}

	/*================================  スタッフ紹介 バイオグラフィー  ================================*/
	#under_teacher .staff_biography{
		margin-top: 35px;
	}
	#under_teacher .staff_biography dl + dl{
		margin-top: 15px;
	}
	#under_teacher .staff_biography dl dt{
		font-size: 1.3rem;
	}
	#under_teacher .staff_biography dl dd{
		font-size: 1.3rem;
		margin-top: 5px;
	}
	
	/*================================  担当講座  ================================*/
	#under_teacher .seminar_list_wrap{
		margin: 45px auto 0;
		padding: 25px 10px;
	}
	#under_teacher .seminar_list_wrap::before {
		content: none;
	}
	#under_teacher .seminar_list_title{
		margin-bottom: 20px;
		font-size: 1.8rem;
	}
	#under_teacher .seminar_list_wrap .seminar_list article + article{
		margin-top: 45px;
	}
	#under_teacher .seminar_list_wrap .seminar_list .seminar_list_inner{
		padding: 15px 10px;
		clip-path: polygon(100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%, 0 0);
	}
	#under_teacher .seminar_list_wrap .seminar_list .seminar_list_inner::before {
		width: 20px;
		height: 20px;
	}
	/* cate */
	#under_teacher .seminar_list_wrap .seminar_list .cate{
		padding-left: 25px;
		font-size: 1rem;
	}
	#under_teacher .seminar_list_wrap .seminar_list .cate::before{
		content:"";
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	#under_teacher .seminar_list_wrap .seminar_list .cate.ftof_online{
		padding-left: 35px
	}
	#under_teacher .seminar_list_wrap .seminar_list .cate.ftof_online::before{
		width: 26px;
		height: 12px;
		background: 
		url(../a_images/top/icon_movie.svg) no-repeat right center / 13px auto ,
		url(../a_images/top/icon_human.svg) no-repeat left center / 8px auto;
	}
	#under_teacher .seminar_list_wrap .seminar_list .cate.online{
		padding-left: 20px;
	}
	#under_teacher .seminar_list_wrap .seminar_list .cate.online::before{
		width: 13px;
		height: 11px;
		background: url(../a_images/top/icon_movie.svg) no-repeat right center / 13px auto ;
	}
	#under_teacher .seminar_list_wrap .seminar_list .cate.ftof{
		padding-left: 15px;
	}
	#under_teacher .seminar_list_wrap .seminar_list .cate.ftof::before{
		width: 8px;
		height: 12px;
		background: url(../a_images/top/icon_human.svg) no-repeat left center / 8px auto;
	}
	/* h4 */
	#under_teacher .seminar_list_wrap .seminar_list h4{
		margin-top: 10px;
		padding-bottom: 15px;
		font-size: 1.4rem;
		text-align: left;
	}
	/* info */
	#under_teacher .seminar_list_wrap .seminar_list .info li{
		font-size: 1rem;
	}
	/* タグ */
	#under_teacher .seminar_list_wrap .seminar_list .tag{
		margin-top: 7px;
		margin-right: -5px;
		padding: 0 4px;
	}
	#under_teacher .seminar_list_wrap .seminar_list .tag li{
		margin-right: 5px;
		margin-top: 8px;
	}
	#under_teacher .seminar_list_wrap .seminar_list .tag li a{
		padding: 5px 15px;
		font-size: 1rem;
	}
	/* status */
	#under_teacher .seminar_list_wrap .seminar_list .status{
		width: 70px;
		height: 70px;
		top: -35px;
		right: -10px;
		font-size: 1.2rem;
	}
	#under_teacher .seminar_list_wrap .seminar_list .status_level3::before{
		clip-path: polygon(100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%, 0 0);
	}
	/* 一覧へのボタン */
	#under_teacher .seminar_list_wrap > .btn_wrap{
		margin-top: 35px;
	}
	#under_teacher .seminar_list_wrap > .btn_wrap a{
		width: 240px;
	}
	/* 詳細へのボタン */
	#under_teacher .seminar_list_wrap .seminar_list article .btn_wrap{
		margin-top: 15px;
	}
	#under_teacher .seminar_list_wrap .seminar_list article .btn_wrap a{
		padding-top: 8px;
		padding-bottom: 6px;
		width: 160px;
		font-size: 1.3rem;
	}
	/* none_seminar */
	#under_teacher .seminar_list_wrap .none_seminar{
		font-size: 1.6rem;
		letter-spacing: 0.15em;
	}
}


/*==================== 共通事項 /*====================*/
#under_seminar .h1 {
    background-image: url(../a_images/seminar/title.jpg);
}
#under_seminar .pankuzu{
	background-color: var(--color-gray);
	padding-bottom: 100px;
}
#under_seminar .h1::before {
    background: url(../a_images/wave_gray_line.svg) repeat-x top center;
}
#under_seminar main{
	background-color: var(--color-gray);
}
#under_seminar main > section{
	margin-top: 110px;
}
/*========== コースタイトル ==========*/
#under_seminar .course_title{
	margin-top: 70px;
	min-height: 370px;
	position: relative;
	padding-left: 50%;
    display: flex;
    align-items: center;
}
#under_seminar .course_title img{
	width: 700px;
	position: absolute;
	left: -270px;
}
#under_seminar .course_title figcaption .fukidashi_wrap{
	text-align: center;
	color: var(--color-base);
}
#under_seminar .course_title figcaption h3{
	margin-top: 5px;
	padding-bottom: 20px;
	position: relative;
	font-size: 4rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	color: var(--color-base);
}
#under_seminar .course_title figcaption h3::after{
	content:"";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 640px;
	height: 60px;
	background: url(../a_images/seminar/h3_border.svg);
}
#under_seminar .course_title figcaption h3 span{
	margin-left: 10px;
	font-size: 1.6rem;
}
#under_seminar .course_title p.text{
	font-size: 1.4rem;
	margin-top: 45px;
	letter-spacing: 0.1em;
	line-height: 1.8;
}
#under_seminar .course_title p.note{
	margin-top: 20px;
	color: var(--color-base);
	line-height: 1.8;
}
#under_seminar .course_title p.note del{
	font-size: 1.4rem;
}
#under_seminar .course_title p.note b{
	font-size: 1.4rem;
	display: block;
}
#under_seminar .course_title p.note span{
	font-size: 1.2rem;
}

/*========== 申し込み ==========*/
#under_seminar #special .application,
#under_seminar #collaboration .application{
	margin-top: 100px;
    margin-left: -23px;
	text-align: center;
}
#under_seminar #special .application .fukidashi_wrap span,
#under_seminar #collaboration .application .fukidashi_wrap span {
	color: #fff;
}
#under_seminar #special .application .fukidashi_wrap span::before, #under_seminar #special .application .fukidashi_wrap span::after,
#under_seminar #collaboration .application .fukidashi_wrap span::before, #under_seminar #collaboration .application .fukidashi_wrap span::after {
    background-color: #fff;
}
#under_seminar #special .application .btn_wrap,
#under_seminar #collaboration .application .btn_wrap {
    margin-top: 30px;
}
#under_seminar #special .application .attention,
#under_seminar #collaboration .application .attention {
    margin-top: 20px;
    font-size: 1.3rem;
}

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

	スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_seminar .h1::before {
		background: url(../a_images/sp_wave_gray_line.svg) repeat-x top left calc(50% + 110px);
	}
	/*========== コースタイトル ==========*/
	#under_seminar .course_title{
		margin-top: 40px;
		min-height: 0;
		padding-left: 0;
		display: block;
	}
	#under_seminar .course_title img{
		margin-left: -20px;
		margin-bottom: 20px;
		width: calc(100% + 40px);
		height: auto;
		position: relative;
		left: 0px;
	}
	#under_seminar .course_title figcaption .fukidashi_wrap{
		text-align: left;
	}
	#under_seminar .course_title figcaption h3{
		margin-top: 5px;
		padding-bottom: 0px;
		font-size: 2rem;
	}
	#under_seminar .course_title figcaption h3::after{
		content: none;
	}
	#under_seminar .course_title figcaption h3 span{
		margin-left: 10px;
		font-size: 1rem;
	}
	#under_seminar .course_title p.text{
		font-size: 1.3rem;
		margin-top: 20px;
	}

	/*========== 申し込み ==========*/
	#under_seminar #special .application,
	#under_seminar #collaboration .application{
		margin-top: 20px;
		margin-left: 0px;
	}
	#under_seminar #special .application,
	#under_seminar #collaboration .application{
		margin-top: 20px;
		margin-left: 0px;
	}
	#under_seminar #special .application .btn_wrap,
	#under_seminar #collaboration .application .btn_wrap {
		margin-top: 15px;
	}
	#under_seminar #special .application .attention,
	#under_seminar #collaboration .application .attention {
		margin-top: 7px;
		font-size: 1rem;
	}
}


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

	1.イントロ

==============================================================================================================================================================
============================================================================================================================================================*/
#under_seminar #intro .fukidashi_wrap,
#under_seminar #intro .intro_title{
	text-align: center;
	color: var(--color-base);
}
#under_seminar #intro .intro_title{
	margin-top: 5px;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 2.8rem;
	letter-spacing: 0.15em;
}
#under_seminar #intro .genre{
	margin-top: 20px;
	margin-left: -13px;
	display: flex;
}
#under_seminar #intro .genre > a{
	margin-left: 13px;
	padding: 20px 20px 15px 20px;
	width: calc(100% / 3 - 13px);
	display: block;
	position: relative;
	border-radius: 10px;
	background-size: cover;
	background-position: center;
}
#under_seminar #intro .genre > a::after{
	content:"";
	width: 13px;
	height: 13px;
	position: absolute;
	top: calc(100% + 10px);
	left: 50%;
	border-right: 1px solid var(--color-base);
	border-bottom: 1px solid var(--color-base);
	transform: rotate(45deg) translateX(-50%);
}
#under_seminar #intro .genre > a:nth-child(1){
	background-image: url(../a_images/seminar/intro_bg1.jpg);
}
#under_seminar #intro .genre > a:nth-child(2){
	background-image: url(../a_images/seminar/intro_bg2.jpg);
}
#under_seminar #intro .genre > a:nth-child(3){
	background-image: url(../a_images/seminar/intro_bg3.jpg);
}
#under_seminar #intro .genre > a dl{
	color: #fff;
}
#under_seminar #intro .genre > a dl dt{
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 2.8rem;
	text-align: center;
}
#under_seminar #intro .genre > a dl dd{
	margin-top: 15px;
	font-size: 1.3rem;
	line-height: 2;
}

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

	イントロ スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_seminar #intro .intro_title{
		font-size: 2rem;
	}
	#under_seminar #intro .genre{
		margin-left: 0px;
		display: block;
	}
	#under_seminar #intro .genre > a{
		margin-left: 0;
		margin-bottom: 35px;
		width: calc(100%);
		display: block;
	}
	#under_seminar #intro .genre > a::after{
		top: calc(100% + 8px);
	}
	#under_seminar #intro .genre > a dl dt{
		font-size: 2rem;
	}
}



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

	2.ベーシック

==============================================================================================================================================================
============================================================================================================================================================*/
#under_seminar #basics{
	background-image: url(../a_images/seminar/basics_bg.svg),url(../a_images/seminar/basics_bg2.svg);
	background-position: top left calc(50% - 500px),bottom center;
	background-repeat: no-repeat;
}
#under_seminar #basics h2{
	color: var(--color-gray);
}
#under_seminar #basics .title_h2 p{
	color: var(--color-base);
}
#under_seminar #basics .seminar_wrap{
	margin-top: 60px;
}
#under_seminar #basics .seminar_wrap.white {
    margin-top: 60px;
}
#under_seminar #basics .seminar_wrap h4{
	position: relative;
	color: var(--color-base);
}
#under_seminar #basics .seminar_wrap h4 span{
	padding: 15px 0;
	width: 250px;
	display: flex;
	position: absolute;
	right: -90px;
	top: 50%;
	transform: translateY(-50%);
	align-items: center;
	justify-content: center;
	background-color: var(--color-base);
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.8;
	border-radius: 15px;
}
#under_seminar #basics .seminar_wrap h4 span::before{
	content: "";
	width: 20px;
	height: 14px;
	position: absolute;
	right: calc(100% - 1px);
	top: 50%;
	transform: translateY(-50%);
	background-color: inherit;
	clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
#under_seminar #basics .seminar_wrap #under_seminar .seminar_list_wrap{
	margin-top: 65px;
}
#under_seminar #basics .seminar_wrap.white #under_seminar .seminar_list_wrap{
	margin-top: 40px;
}
#under_seminar #basics .seminar_wrap.white .fukidashi_wrap{
	margin-bottom: 30px;
	text-align: center;
	color: var(--color-base);
}
#under_seminar #basics .application{
	margin-top: 100px;
	text-align: center;
}
#under_seminar #basics .seminar_wrap.all .application{
	margin-top: 50px;
	margin-bottom: 100px;
	text-align: center;
}
#under_seminar #basics .application .fukidashi_wrap{
	color: var(--color-base);
}
#under_seminar #basics .application .btn_wrap{
	margin-top: 30px;
}
#under_seminar #basics .application .attention{
	margin-top: 20px;
	font-size: 1.3rem;
}
#under_seminar #basics .seminar_wrap.white #under_seminar .application {
	margin-top: 65px;
	margin-left: -23px;
}
/* 飾り */
#under_seminar #basics .seminar_wrap:not(.white){
	position: relative;
}
#under_seminar #basics .seminar_wrap:not(.white):not(.all)::after {
	content:"";
	position: absolute;
	left: -160px;
	bottom: -150px;
	width: 345px;
	height: 205px;
	background: url(../a_images/seminar/basics_bg.svg);
}

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

	ベーシック スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_seminar #basics{
		background-image: none;
	}
	#under_seminar #basics .title_h2 .deco::after{
        width: 30px;
        height: 38px;
        right: -30px;
        bottom: -12px;
        top: unset;
        background-image: url(../a_images/h2_deco_gold_right.svg);
    }
	#under_seminar #basics .seminar_wrap{
		margin-top: 40px;
	}
	#under_seminar #basics .seminar_wrap.white {
		margin-top: 30px;
	}
	#under_seminar #basics .seminar_wrap h4 span{
		margin: 20px auto 0;
		padding: 5px 0;
		width: calc(100% - 50px);
		display: block;
		position: static;
		transform: translateY(0);
		text-align: center;
		font-size: 1rem;
	}
	#under_seminar #basics .seminar_wrap h4 span::before{
		width: 10px;
		height: 15px;
		left: 50%;
		right: unset;
		top: -15px;
		transform: translateX(-50%);
		clip-path: polygon(50% 0, 0 100%, 100% 100%);
	}
	#under_seminar #basics .seminar_wrap #under_seminar .seminar_list_wrap{
		margin-top: 40px;
	}
	#under_seminar #basics .seminar_wrap.white .fukidashi_wrap {
		margin-bottom: 15px;
	}
	#under_seminar #basics .seminar_wrap.white #under_seminar .seminar_list_wrap{
		margin-top: 30px;
	}
	#under_seminar #basics .application{
		margin-top: 20px;
	}
	#under_seminar #basics .application .btn_wrap{
		margin-top: 15px;
	}
	#under_seminar #basics .application .attention{
		margin-top: 7px;
		font-size: 1rem;
	}
	#under_seminar #basics .seminar_wrap.white #under_seminar .application {
		margin-top: 30px;
		margin-left: 0px;
	}
	/* 飾り */
	#under_seminar #basics .seminar_wrap:not(.white)::after{
		content: none;
	}
}




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

	3.スペシャル

==============================================================================================================================================================
============================================================================================================================================================*/
#under_seminar #special{
	margin-top: 260px;
	padding-bottom: 280px;
	padding-top: 170px;
	position: relative;
	background-color: var(--color-base);
	background-image: url(../a_images/seminar/special_bg.svg);
	background-position: bottom 110px  left calc(50% + 50px);
	background-repeat: no-repeat;
}
#under_seminar #special::before {
    content: "";
    width: 100%;
    height: 233px;
    position: absolute;
    background: url(../a_images/wave_gold.svg) repeat-x top center;
    left: 0;
    bottom: 100%;
}
#under_seminar #special h2{
	color: var(--color-base);
}
#under_seminar #special .course_title{
	padding-left: 0;
	padding-right: 50%;
}
#under_seminar #special .course_title img{
	left: unset;
	right: -270px;
}
#under_seminar #special .course_title h3,
#under_seminar #special .course_title .text{
	color: #fff;
}
#under_seminar #special .course_title figcaption h3::after {
    width: 520px;
    height: 55px;
    background: url(../a_images/seminar/h3_border_special.svg);
}
#under_seminar #special .course_title .fukidashi_wrap{
	margin-top: 23px;
	padding: 10px 17px;
	display: inline-block;
	border-radius: 5px;
	background-color: #fff;
}
#under_seminar #special .course_title .fukidashi_wrap span{
	font-size: 2.4rem;
	font-family: var(--font-ver1);
}
#under_seminar #special .seminar_list .btn_wrap a{
	border-color: #fff;
	color: #fff;
}
#under_seminar #special .seminar_list .btn_wrap a::after{
	background-image: url(../a_images/btn_wrap_arrow_white.svg);
}
/*==============================================================================

	スペシャル スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_seminar #special{
		margin-top: 140px;
		padding-top: 70px;
		padding-bottom: 120px;
		background-image: none;
	}
	#under_seminar #special::before {
        height: 122px;
        background: url(../a_images/sp_wave_gold.svg) repeat-x top left calc(50% + 110px);
    }
	#under_seminar #special .course_title{
		padding-left: 0;
		padding-right: 0;
	}
	#under_seminar #special .title_h2 .deco::after {
        width: 30px;
        height: 38px;
        right: -30px;
        bottom: -12px;
        top: unset;
        background-image: url(../a_images/h2_deco_white_right.svg);
    }
	#under_seminar #special .course_title img{
		right: 0;
	}
	#under_seminar #special .course_title .fukidashi_wrap{
		margin-top: 10px;
		padding: 5px 17px;
	}
	#under_seminar #special .course_title .fukidashi_wrap span{
		font-size: 1.5rem;
	}
}




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

	4.コラボ

==============================================================================================================================================================
============================================================================================================================================================*/
#under_seminar #collaboration{
	margin-top: 0px;
	padding-bottom: 280px;
	padding-top: 170px;
	position: relative;
	background-color: #d6b877;
	background-image: url(../a_images/seminar/special_bg.svg);
	background-position: bottom 110px  left calc(50% + 50px);
	background-repeat: no-repeat;
}
#under_seminar #collaboration .title_h2 [lang="en"] span.stroke{
	display: inline-block;
	letter-spacing: 0.2em;
	position: relative;
	z-index: 1;
	color: #d6b877;
}
#under_seminar #collaboration .title_h2 [lang="en"] span.stroke::before {
	content: attr(data-text);
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	color: var(--color-base);
	-webkit-text-stroke: 3px #fff;
	mix-blend-mode: multiply;
	text-shadow: -2px 3px 0px #fff;
}
#under_seminar #collaboration::before {
    content: "";
    width: 100%;
    height: 233px;
    position: absolute;
    background: url(../a_images/seminar/wave_collaboration.svg) repeat-x top center;
    left: 0;
    bottom: 100%;
}
#under_seminar #collaboration .course_title figcaption h3,
#under_seminar #collaboration .course_title figcaption .text{
	color: #fff;
}
#under_seminar #collaboration .course_title figcaption h3::after{
	background: url(../a_images/seminar/h3_border_collaboration.svg);
}
#under_seminar #collaboration .course_title .fukidashi_wrap{
	margin-top: 23px;
	padding: 10px 17px;
	display: inline-block;
	border-radius: 5px;
	background-color: #fff;
}
#under_seminar #collaboration .course_title .fukidashi_wrap span{
	font-size: 2.4rem;
	font-family: var(--font-ver1);
}
#under_seminar #collaboration .seminar_list .btn_wrap a{
	border-color: #fff;
	color: #fff;
}
#under_seminar #collaboration .seminar_list .btn_wrap a::after{
	background-image: url(../a_images/btn_wrap_arrow_white.svg);
}
/*==============================================================================

	コラボ スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_seminar #collaboration{
		padding-top: 70px;
		padding-bottom: 120px;
		background-image: none;
	}
	#under_seminar #collaboration::before {
        height: 122px;
        background: url(../a_images/seminar/sp_wave_collaboration.svg) repeat-x top left calc(50% + 110px);
    }
	#under_seminar #collaboration .title_h2 .deco::after {
        width: 30px;
        height: 38px;
        right: -20px;
        bottom: -12px;
        top: unset;
        background-image: url(../../a_images/h2_deco_white_right.svg);
    }
	#under_seminar #collaboration .course_title .fukidashi_wrap{
		margin-top: 10px;
		padding: 5px 17px;
	}
	#under_seminar #collaboration .course_title .fukidashi_wrap span{
		font-size: 1.5rem;
	}
}


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

	5.セミナー一覧

==============================================================================================================================================================
============================================================================================================================================================*/
#under_seminar .seminar_wrap{
    margin-top: 55px;
	padding: 0 90px;
}
#under_seminar .seminar_wrap.white{
	padding: 65px 90px 50px;
	position: relative;
	background-color: #fff;
}
#under_seminar .seminar_wrap.white::before {
    content: "";
    width: 70px;
    height: 70px;
    position: absolute;
    top: 0;
    right: 0;
    background: linear-gradient(225deg, #f5f5f5 50%, rgba(216, 216, 215, 1) 50%);
}
#under_seminar .seminar_list_wrap{
    margin-top: 50px;
	text-align: left;
	letter-spacing: 0.15em;
}
#under_seminar .seminar_list_title{
	margin-bottom: 30px;
	color: var(--color-base);
	font-size: 2.4rem;
	font-weight: var(--weight-bold);
	text-align: center;
}
#under_seminar .seminar_list_wrap .seminar_list article{
	position: relative;
	z-index: 2;
}
#under_seminar .seminar_list_wrap .seminar_list .more_content,
#under_seminar .seminar_list_wrap .seminar_list article + article{
	margin-top: 65px;
}
#under_seminar .seminar_list_wrap .seminar_list .seminar_list_inner{
	padding: 35px;
	position: relative;
	background-color: #fff;
	clip-path: polygon(100% 0, 100% calc(100% - 30px), calc(100% - 30px) 100%, 0 100%, 0 0);
}
#under_seminar .white  .seminar_list_wrap .seminar_list .seminar_list_inner{
	background-color: var(--color-gray);
}
#under_seminar .seminar_list_wrap .seminar_list .seminar_list_inner::before {
    content: "";
    width: 30px;
    height: 30px;
    position: absolute;
    z-index: 2;
    bottom: 0;
    right: 0;
    background: linear-gradient(-45deg, rgb(255 255 255 / 0) 50%, rgb(216 216 216 / 1) 50%);
}
/* cate */
#under_seminar .seminar_list_wrap .seminar_list .cate{
	padding-left: 25px;
	color: var(--color-base);
	font-weight: var(--weight-bold);
	position: relative;
}
#under_seminar .seminar_list_wrap .seminar_list .cate::before{
	content:"";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
#under_seminar .seminar_list_wrap .seminar_list .cate.ftof_online{
	padding-left: 50px
}
#under_seminar .seminar_list_wrap .seminar_list .cate.ftof_online::before{
	width: 40px;
	height: 18px;
	background: 
	url(../a_images/top/icon_movie.svg) no-repeat right center,
	url(../a_images/top/images/icon_human.svg) no-repeat left center;
}
#under_seminar .seminar_list_wrap .seminar_list .cate.online{
	padding-left: 30px;
}
#under_seminar .seminar_list_wrap .seminar_list .cate.online::before{
	width: 18px;
	height: 14px;
	background: url(../a_images/top/icon_movie.svg) no-repeat right center;
}
#under_seminar .seminar_list_wrap .seminar_list .cate.ftof::before{
	width: 12px;
	height: 18px;
	background: url(../a_images/top/icon_human.svg) no-repeat left center;
}
/* h5 */
#under_seminar .seminar_list_wrap .seminar_list h5{
	margin-top: 20px;
	padding-bottom: 15px;
	text-align: center;
	color: var(--color-black);
	font-size: 1.8rem;
	font-weight: var(--weight-bold);
	line-height: 2;
	border-bottom: 2px solid var(--color-base);
}
/* info */
#under_seminar .seminar_list_wrap .seminar_list .info{
	margin-top: 10px;
	padding: 0 0 0 10px;
	display: flex;
	flex-wrap: wrap;
	color: var(--color-base);
}
#under_seminar .seminar_list_wrap .seminar_list .info li{
	margin-top: 5px;
	margin-right: 10px;
	padding-left: 19px;
	position: relative;
	letter-spacing: 0.1em;
}
#under_seminar .seminar_list_wrap .seminar_list .info li::before{
	content:"";
	top: 50%;
	left: 0;
	width: 16px;
	height: 15px;
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background-repeat: no-repeat;
	background-position: left center;
}
#under_seminar .seminar_list_wrap .seminar_list .info li.schedule::before{
	background-image: url(../a_images/top/icon_schedule.svg);
	background-size: 14px auto;
}
#under_seminar .seminar_list_wrap .seminar_list .info li.upload::before{
	background-image: url(../a_images/top/icon_movie.svg);
	background-size: 16px auto;
}
#under_seminar .seminar_list_wrap .seminar_list .info li.time::before{
	background-image: url(../a_images/top/icon_time.svg);
	background-size: 14px auto;
}
#under_seminar .seminar_list_wrap .seminar_list .info li.location{
	padding-left: 15px;
}
#under_seminar .seminar_list_wrap .seminar_list .info li.location::before{
	background-image: url(../a_images/top/icon_location.svg);
	background-size: auto 14px;
}
#under_seminar .seminar_list_wrap .seminar_list .info li.teacher{
	padding-left: 15px;
}
#under_seminar .seminar_list_wrap .seminar_list .info li.teacher::before{
	background-image: url(../a_images/top/icon_human.svg);
	background-size: 10px auto;
}
#under_seminar .seminar_list_wrap .seminar_list .info li .num{
	font-family: var(--font-en);
	font-weight: var(--weight-medium);
}
/* タグ */
#under_seminar .seminar_list_wrap .seminar_list .tag{
	margin-top: 7px;
	margin-right: -13px;
	padding: 0 4px;
	display: flex;
	flex-wrap: wrap;
}
#under_seminar .seminar_list_wrap .seminar_list .tag li{
	margin-right: 13px;
	margin-top: 8px;
}
#under_seminar .seminar_list_wrap .seminar_list .tag li a{
	padding: 5px 17px;
	display: block;
	font-family: var(--font-ver1);
	font-size: 1.2rem;
	border: 1px solid var(--color-base);
	border-radius: 30px;
}
/* status */
#under_seminar .seminar_list_wrap .seminar_list .status{
	width: 90px;
	height: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border-radius: 100%;
	color: #fff;
	font-style: var(--font-ver1);
	font-weight: var(--weight-bold);
	position: absolute;
	top: -20px;
	right: -28px;
	z-index: 3;
	box-shadow: 3px 3px 0px 0px rgb(0 0 0 / 0.2);
}
#under_seminar .seminar_list_wrap .seminar_list .status_level1 .status{
	background-color: #4f700f;
}
#under_seminar .seminar_list_wrap .seminar_list .status_level2 .status{
	background-color: #ea5550;
}
#under_seminar .seminar_list_wrap .seminar_list .status_level3 .status{
	background-color: #3e3a39;
}
#under_seminar .seminar_list_wrap .seminar_list .status_level3::before{
	content:"";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-color: rgb( 62 58 57 / 0.3 );
	clip-path: polygon(100% 0, 100% calc(100% - 30px), calc(100% - 30px) 100%, 0 100%, 0 0);
	z-index: 2;
}
.seminar_list > .btn_wrap{
	margin-top: 50px;
}
.seminar_list > .btn_wrap a{
	width: 420px;
}
#under_seminar .seminar_list_wrap .seminar_list article .btn_wrap{
	margin-top: 30px;
}
/* none_seminar */
#under_seminar .seminar_list_wrap .none_seminar{
	text-align: center;
	font-size: 2.8rem;
	font-family: var(--font-ver1);
	letter-spacing: 0.2em;
}
/*========== このコースで学べる講座 ==========*/
#under_seminar .seminar_wrap h4{
	text-align: center;
	font-size: 2.8rem;
	color: #fff;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
.more_content{
	display: none;
}
/* 申し込みボタン */
#under_seminar .application .btn_wrap a{
	padding: 30px 0;
	width: 840px;
	font-size: 2.2rem;
}
#under_seminar .application .btn_wrap a::after {
    width: 40px;
    height: 26px;
    right: 35px;
}

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

	セミナー一覧 スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_seminar .seminar_wrap{
		margin-top: 40px;
		padding: 0 10px;
	}
	#under_seminar .seminar_wrap.white{
		padding: 40px 10px;
	}
	#under_seminar .seminar_wrap.white::before {
		width: 40px;
		height: 40px;
	}
	#under_seminar .seminar_list_wrap{
		margin: 30px auto 0;
	}
	#under_seminar .seminar_list_wrap::before {
		content: none;
	}
	#under_seminar .seminar_list_title{
		margin-bottom: 20px;
		font-size: 1.8rem;
	}
	#under_seminar .seminar_list_wrap .seminar_list article + article{
		margin-top: 45px;
	}
	#under_seminar .seminar_list_wrap .seminar_list .seminar_list_inner{
		padding: 15px 10px;
		clip-path: polygon(100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%, 0 0);
	}
	#under_seminar .seminar_list_wrap .seminar_list .seminar_list_inner::before {
		width: 20px;
		height: 20px;
	}
	/* cate */
	#under_seminar .seminar_list_wrap .seminar_list .cate{
		padding-left: 25px;
		font-size: 1rem;
	}
	#under_seminar .seminar_list_wrap .seminar_list .cate::before{
		content:"";
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	#under_seminar .seminar_list_wrap .seminar_list .cate.ftof_online{
		padding-left: 35px
	}
	#under_seminar .seminar_list_wrap .seminar_list .cate.ftof_online::before{
		width: 26px;
		height: 12px;
		background: 
		url(../a_images/top/icon_movie.svg) no-repeat right center / 13px auto ,
		url(../a_images/top/icon_human.svg) no-repeat left center / 8px auto;
	}
	#under_seminar .seminar_list_wrap .seminar_list .cate.online{
		padding-left: 20px;
	}
	#under_seminar .seminar_list_wrap .seminar_list .cate.online::before{
		width: 13px;
		height: 11px;
		background: url(../a_images/top/icon_movie.svg) no-repeat right center / 13px auto ;
	}
	#under_seminar .seminar_list_wrap .seminar_list .cate.ftof{
		padding-left: 15px;
	}
	#under_seminar .seminar_list_wrap .seminar_list .cate.ftof::before{
		width: 8px;
		height: 12px;
		background: url(../a_images/top/icon_human.svg) no-repeat left center / 8px auto;
	}
	/* h5 */
	#under_seminar .seminar_list_wrap .seminar_list h5{
		margin-top: 10px;
		padding-bottom: 15px;
		font-size: 1.4rem;
		text-align: left;
	}
	/* info */
	#under_seminar .seminar_list_wrap .seminar_list .info li{
		font-size: 1rem;
	}
	/* タグ */
	#under_seminar .seminar_list_wrap .seminar_list .tag{
		margin-top: 7px;
		margin-right: -5px;
		padding: 0 4px;
	}
	#under_seminar .seminar_list_wrap .seminar_list .tag li{
		margin-right: 5px;
		margin-top: 8px;
	}
	#under_seminar .seminar_list_wrap .seminar_list .tag li a{
		padding: 5px 15px;
		font-size: 1rem;
	}
	/* status */
	#under_seminar .seminar_list_wrap .seminar_list .status{
		width: 70px;
		height: 70px;
		top: -35px;
		right: -10px;
		font-size: 1.2rem;
	}
	#under_seminar .seminar_list_wrap .seminar_list .status_level3::before{
		clip-path: polygon(100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%, 0 0);
	}
	.seminar_list > .btn_wrap{
		margin-top: 40px;
		padding: 0 30px;
	}
	.seminar_list > .btn_wrap a{
		width: 100%;
		max-width: 240px;
	}
	/* 一覧へのボタン */
	#under_seminar .seminar_list_wrap > .btn_wrap{
		margin-top: 35px;
	}
	#under_seminar .seminar_list_wrap > .btn_wrap a{
		width: 240px;
	}
	/* 詳細へのボタン */
	#under_seminar .seminar_list_wrap .seminar_list article .btn_wrap{
		margin-top: 15px;
	}
	#under_seminar .seminar_list_wrap .seminar_list article .btn_wrap a{
		padding-top: 8px;
		padding-bottom: 6px;
		width: 160px;
		font-size: 1.3rem;
	}
	/* none_seminar */
	#under_seminar .seminar_list_wrap .none_seminar{
		font-size: 1.6rem;
		letter-spacing: 0.15em;
	}
	/*========== このコースで学べる講座 ==========*/
	#under_seminar .seminar_wrap h4{
		font-size: 2rem;
	}
	/* 申し込みボタン */
	#under_seminar .application .btn_wrap a{
		padding: 10px 0;
		width: 100%;
		max-width: 240px;
		font-size: 1.4rem;
	}
	#under_seminar .application .btn_wrap a::after {
		width: 15px;
		height: 10px;
		right: 20px;
	}
}


.c-main_top_search {
    width: 100%;
    padding: 70px 50px;
    background: #fff;
    border-radius: 10px;
    margin-top: 20px;
    box-shadow: 0 10px 10px rgba(62, 58, 37, 0.2)
}

@media only screen and (max-width: 1260px) {
    .c-main_top_search {
        padding: 50px 40px
    }
}

@media only screen and (max-width: 960px) {
    .c-main_top_search {
        padding: 40px 25px
    }
}

@media (max-width: 767px) {
    .c-main_top_search {
        padding: 40px 20px;
        margin-top: 50px
    }
}

.c-main_top_search .c-search_input_box {
    width: 80%;
    max-width: 560px;
    display: flex;
    justify-content: center;
    margin: 0 auto;
    position: relative
}

@media (max-width: 767px) {
    .c-main_top_search .c-search_input_box {
        width: 100%
    }
}

.c-main_top_search .c-search_input_box:before {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    background: url(../a_images/mypage/common/icon-search-gray.svg) no-repeat center center/contain;
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%)
}

.c-main_top_search .c-search_input_box input {
    width: calc(100% - 50px);
    background: rgba(188, 185, 176, 0.3);
    padding-left: 50px;
    border: none;
    border-radius: 5px 0 0 5px
}

.c-main_top_search .c-search_input_box input::placeholder {
    color: rgba(62, 58, 57, 0.5);
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1em;
    letter-spacing: .15em
}

.c-main_top_search .c-search_input_box .c-search_input_btn {
    width: 50px;
    height: 50px;
    border: none;
    border-radius: 0 5px 5px 0;
    background: #c4993d;
    position: relative
}

.c-main_top_search .c-search_input_box .c-search_input_btn::after {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    background: url(../a_images/mypage/common/icon-search-white.svg) no-repeat center center/contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.c-main_top_search .c-search_type_box {
    margin-top: 20px
}

.c-main_top_search .c-search_type_box .c-search_type_list {
    display: flex;
    gap: 1px
}

@media (max-width: 767px) {
    .c-main_top_search .c-search_type_box .c-search_type_list {
        flex-direction: column
    }
}

.c-main_top_search .c-search_type_box .c-search_type_item {
    flex: 1
}

.c-main_top_search .c-search_type_box .c-search_type_item .c-search_type_label {
    width: 100%;
    height: 100%;
    background: #bcb9b0;
    padding: 15px 20px;
    display: flex;
    align-items: center;
    cursor: pointer;
    transition: all 0.2s
}

@media only screen and (max-width: 960px) {
    .c-main_top_search .c-search_type_box .c-search_type_item .c-search_type_label {
        padding: 15px 10px
    }
}

@media (max-width: 767px) {
    .c-main_top_search .c-search_type_box .c-search_type_item .c-search_type_label {
        position: relative;
        padding-top: 18px;
        padding-bottom: 18px
    }
}

.c-main_top_search .c-search_type_box .c-search_type_item .c-search_type_label:hover {
    background: #ae8d56
}

.c-main_top_search .c-search_type_box .c-search_type_item .c-search_type_label:hover .c-search_type_icon:after,
.c-main_top_search .c-search_type_box .c-search_type_item .c-search_type_label:hover .c-search_type_icon:before {
    background: #ae8d56
}

.c-main_top_search .c-search_type_box .c-search_type_item .c-search_type_label.current {
    background: #c4993d
}

.c-main_top_search .c-search_type_box .c-search_type_item .c-search_type_label.current .c-search_type_icon:after,
.c-main_top_search .c-search_type_box .c-search_type_item .c-search_type_label.current .c-search_type_icon:before {
    background: #c4993d
}

.c-main_top_search .c-search_type_box .c-search_type_item .c-search_type_label.current .c-search_type_icon:after {
    transform: translate(-50%, -50%) rotate(90deg)
}

.c-main_top_search .c-search_type_box .c-search_type_item .c-search_type_label .c-search_type_text {
    flex-grow: 1;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1em;
    letter-spacing: .15em;
    color: #fff;
    text-align: center
}

@media only screen and (max-width: 960px) {
    .c-main_top_search .c-search_type_box .c-search_type_item .c-search_type_label .c-search_type_text {
        letter-spacing: 0.1em
    }
}

@media (max-width: 767px) {
    .c-main_top_search .c-search_type_box .c-search_type_item .c-search_type_label .c-search_type_text {
        letter-spacing: 0.15em
    }
}

@media (max-width: 767px) {
    .c-main_top_search .c-search_type_box .c-search_type_item .c-search_type_label .c-search_type_icon {
        position: absolute;
        top: 50%;
        right: 15px;
        transform: translateY(-50%)
    }
}

.c-main_top_search .c-search_type_box .c-search_category_box {
    display: none;
    background: rgba(196, 153, 61, 0.3);
    padding: 4.546% 5.682%
}

@media (max-width: 767px) {
    .c-main_top_search .c-search_type_box .c-search_category_box {
        padding: 15px 20px
    }
}

.c-main_top_search .c-search_type_box .c-search_category_box.for_pc .c-search_category_list {
    display: none
}

.c-main_top_search .c-search_type_box .c-search_category_box.for_pc .c-search_category_list.is_show {
    display: flex
}

.c-main_top_search .c-search_type_box .c-search_category_list {
    display: flex;
    flex-wrap: wrap;
    column-gap: 1.922%;
    row-gap: 10px
}

@media (max-width: 767px) {
    .c-main_top_search .c-search_type_box .c-search_category_list {
        flex-direction: column;
        row-gap: 15px
    }
}

.c-main_top_search .c-search_type_box .c-search_category_item {
    width: 32.052%;
    cursor: pointer
}

@media (max-width: 767px) {
    .c-main_top_search .c-search_type_box .c-search_category_item {
        width: 100%
    }
}

.c-main_top_search .c-search_type_box .c-search_category_item a {
    display: block;
    width: 100%;
    height: 100%;
    color: #c4993d;
    background: #fff;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1em;
    letter-spacing: .15em;
    font-weight: 700;
    padding: 13px 20px;
    border-radius: 10px;
    transition: all 0.3s
}

.c-main_top_search .c-search_type_box .c-search_category_item a:hover,
.c-main_top_search .c-search_type_box .c-search_category_item.current a {
    background: #c4993d;
    color: #fff
}

.c-plus_icon {
    display: block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #fff;
    position: relative
}

.c-plus_icon:before {
    content: "";
    display: block;
    width: 60%;
    height: 2px;
    background: #bcb9b0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.c-plus_icon:after {
    content: "";
    display: block;
    width: 2px;
    height: 60%;
    background: #bcb9b0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transform-origin: center;
    transition: transform 0.3s
}

#under_seminar-list .h1 {
    background-image: url(../a_images/seminar/title.jpg);
}
/*==================== 共通事項 /*====================*/
#under_seminar-list .pankuzu{
	background-color: var(--color-gray);
	padding-bottom: 100px;
}
#under_seminar-list .under_layer .h1::before {
    background: url(../a_images/wave_gray_line.svg) repeat-x top center;
}
#under_seminar-list main{
	background-color: var(--color-gray);
}
#under_seminar-list main #list_page{
	padding-bottom: 100px;
}
/*==============================================================================

	スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_seminar-list .pankuzu{
		padding-bottom: 20px;
	}
	#under_seminar-list .under_layer .h1::before {
		background: url(../a_images/sp_wave_gray_line.svg) repeat-x top left calc(50% + 110px);
	}
	#under_seminar-list main #list_page{
		padding-bottom: 50px;
	}
}

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

	1.検索

==============================================================================================================================================================
============================================================================================================================================================*/
#under_seminar-list main .c-main_top_search{
	padding-bottom: 40px;
	border-radius: 0;
	box-shadow: none;
}
#under_seminar-list main .c-main_top_search .checkbox_wrap{
	margin-top: 20px;
	text-align: right;
}
#under_seminar-list main .c-main_top_search .checkbox_wrap input[type="checkbox"] {
    position: absolute;
    white-space: nowrap;
    width: 1px;
    height: 1px;
    overflow: hidden;
    border: 0;
    padding: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    margin: -1px;
}
#under_seminar-list main .c-main_top_search .checkbox_wrap label {
	font-size: 1.4rem;
}
#under_seminar-list main .c-main_top_search .checkbox_wrap label.check {
	padding-left: 30px;
    position: relative;
    text-align: left;
    line-height: 1.8;
    cursor: pointer;
}
#under_seminar-list main .c-main_top_search .checkbox_wrap label.check::before {
    content: "";
    width: 18px;
    height: 18px;
    position: absolute;
    top: 50%;
    left: 0;
	transform: translateY(-50%);
    border: 2px solid #bcb9b0;
}
#under_seminar-list main .c-main_top_search .checkbox_wrap input:checked + label::before {
    background-image: url(../a_images/seminar/list/check.svg);
    background-repeat: no-repeat;
    background-position: center;
	background-size: 80% auto;
}
/*==============================================================================

	検索

==============================================================================*/
@media all and (max-width: 768px){
	#under_seminar-list main .c-main_top_search{
		margin-top: 0;
	}
}

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

	2.セミナー一覧

==============================================================================================================================================================
============================================================================================================================================================*/
#under_seminar-list .seminar_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#under_seminar-list .seminar_list article{
	width: calc(50% - 20px);
	position: relative;
}
#under_seminar-list .seminar_list article{
	margin-top: 65px;
}
#under_seminar-list .seminar_list .seminar_list_inner{
	padding: 35px;
	height: 100%;
	position: relative;
	background-color: #fff;
	clip-path: polygon(100% 0, 100% calc(100% - 30px), calc(100% - 30px) 100%, 0 100%, 0 0);
}
#under_seminar-list .seminar_list .seminar_list_inner::before {
    content: "";
    width: 30px;
    height: 30px;
    position: absolute;
    z-index: 1;
    bottom: 0;
    right: 0;
    background: linear-gradient(-45deg, rgb(255 255 255 / 0) 50%, rgb(216 216 216 / 1) 50%);
}
/* cate */
#under_seminar-list .seminar_list .cate{
	padding-left: 25px;
	color: var(--color-base);
	font-weight: var(--weight-bold);
	position: relative;
}
#under_seminar-list .seminar_list .cate::before{
	content:"";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
#under_seminar-list .seminar_list .cate.ftof_online{/* オンライン収録 + 対面のアイコン */
	padding-left: 50px
}
#under_seminar-list .seminar_list .cate.ftof_online::before{
	width: 40px;
	height: 18px;
	background: 
	url(../a_images/top/icon_movie.svg) no-repeat right center,
	url(../a_images/top/icon_human.svg) no-repeat left center;
}
#under_seminar-list .seminar_list .cate.online{
	padding-left: 30px;
}
#under_seminar-list .seminar_list .cate.online::before{/* オンライン収録のアイコン */
	width: 18px;
	height: 14px;
	background: url(../a_images/top/icon_movie.svg) no-repeat right center;
}
#under_seminar-list .seminar_list .cate.ftof::before{/* 対面のアイコン */
	width: 12px;
	height: 18px;
	background: url(../a_images/top/icon_human.svg) no-repeat left center;
}
/* title */
#under_seminar-list .seminar_list .title{
	margin-top: 20px;
	padding-bottom: 15px;
	text-align: center;
	color: var(--color-black);
	font-size: 1.8rem;
	font-weight: var(--weight-bold);
	line-height: 2;
	border-bottom: 2px solid var(--color-base);
}
/* info と 画像を並列に */
#under_seminar-list .seminar_list .flex_wrap{
	margin-top: 10px;
	padding: 0 0 0 10px;
	display: flex;
	align-items: start;
}
/* info */
#under_seminar-list .seminar_list .info{
	padding-right: 10px;
	width: calc(100% - 140px);
	display: flex;
	flex-wrap: wrap;
	color: var(--color-base);
}
#under_seminar-list .seminar_list .info li{
	margin-top: 5px;
	margin-right: 10px;
	padding-left: 19px;
	position: relative;
	letter-spacing: 0.1em;
}
#under_seminar-list .seminar_list .info li::before{
	content:"";
	top: 50%;
	left: 0;
	width: 16px;
	height: 15px;
	display: block;
	position: absolute;
	left: 0;
	top: 3px;
	background-repeat: no-repeat;
	background-position: left center;
}
#under_seminar-list .seminar_list .info li.schedule,
#under_seminar-list .seminar_list .info li.upload{
	margin-right: 0;
	width: 100%;
}
#under_seminar-list .seminar_list .info li.schedule::before{
	background-image: url(../a_images/top/icon_schedule.svg);
	background-size: 14px auto;
}
#under_seminar-list .seminar_list .info li.upload::before{
	background-image: url(.../a_images/top/icon_movie.svg);
	background-size: 16px auto;
}
#under_seminar-list .seminar_list .info li.time::before{
	background-image: url(../a_images/top/icon_time.svg);
	background-size: 14px auto;
}
#under_seminar-list .seminar_list .info li.location{
	padding-left: 15px;
}
#under_seminar-list .seminar_list .info li.location::before{
	background-image: url(../a_images/top/icon_location.svg);
	background-size: auto 14px;
}
#under_seminar-list .seminar_list .info li.teacher{
	padding-left: 15px;
}
#under_seminar-list .seminar_list .info li.teacher::before{
	background-image: url(../a_images/top/icon_human.svg);
	background-size: 10px auto;
}
#under_seminar-list .seminar_list .info li .num{
	font-family: var(--font-en);
	font-weight: var(--weight-medium);
}
/* 画像 */
#under_seminar-list .seminar_list .img{
	width: 140px;
	aspect-ratio: 3 / 2;
} 
#under_seminar-list .seminar_list .img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
/* タグ */
#under_seminar-list .seminar_list .tag{
	margin-top: 7px;
	margin-right: -13px;
	padding: 0 4px;
	display: flex;
	flex-wrap: wrap;
}
#under_seminar-list .seminar_list .tag li{
	margin-right: 13px;
	margin-top: 8px;
}
#under_seminar-list .seminar_list .tag li a{
	padding: 5px 17px;
	display: block;
	font-family: var(--font-ver1);
	font-size: 1.2rem;
	border: 1px solid var(--color-base);
	border-radius: 30px;
}
/* status */
#under_seminar-list .seminar_list .status{
	width: 90px;
	height: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border-radius: 100%;
	color: #fff;
	font-style: var(--font-ver1);
	font-weight: var(--weight-bold);
	position: absolute;
	top: -20px;
	right: -28px;
	z-index: 999;
	box-shadow: 3px 3px 0px 0px rgb(0 0 0 / 0.2);
    font-size: 1.5rem;
}
#under_seminar-list .seminar_list .status_level1 .status{
	background-color: #4f700f;
}
#under_seminar-list .seminar_list .status_level2 .status{
	background-color: #ea5550;
}
#under_seminar-list .seminar_list .status_level3 .status{
	background-color: #3e3a39;
}
#under_seminar-list .seminar_list .status_level3::before{
	content:"";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-color: rgb( 62 58 57 / 0.3 );
	clip-path: polygon(100% 0, 100% calc(100% - 30px), calc(100% - 30px) 100%, 0 100%, 0 0);
	z-index: 1;
}
#under_seminar-list .seminar_list > .btn_wrap{
	margin-top: 50px;
}
#under_seminar-list .seminar_list > .btn_wrap a{
	width: 420px;
}
#under_seminar-list .seminar_list article .btn_wrap{
	margin-top: 30px;
}

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

	セミナー一覧 スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_seminar-list .seminar_list{
		display: block;
	}
	#under_seminar-list .seminar_list article{
		width: 100%;
	}
	#under_seminar-list .seminar_list article + article{
		margin-top: 45px;
	}
	#under_seminar-list .seminar_list .seminar_list_inner{
		padding: 15px 10px;
		clip-path: polygon(100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%, 0 0);
	}
	#under_seminar-list .seminar_list .seminar_list_inner::before {
		width: 20px;
		height: 20px;
	}
	/* cate */
	#under_seminar-list .seminar_list .cate{
		padding-left: 25px;
		font-size: 1rem;
	}
	#under_seminar-list .seminar_list .cate::before{
		content:"";
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}
	#under_seminar-list .seminar_list .cate.ftof_online{
		padding-left: 35px
	}
	#under_seminar-list .seminar_list .cate.ftof_online::before{
		width: 26px;
		height: 12px;
		background: 
		url(../a_images/top/icon_movie.svg) no-repeat right center / 13px auto ,
		url(../a_images/top/icon_human.svg) no-repeat left center / 8px auto;
	}
	#under_seminar-list .seminar_list .cate.online{
		padding-left: 20px;
	}
	#under_seminar-list .seminar_list .cate.online::before{
		width: 13px;
		height: 11px;
		background: url(../a_images/top/icon_movie.svg) no-repeat right center / 13px auto ;
	}
	#under_seminar-list .seminar_list .cate.ftof{
		padding-left: 15px;
	}
	#under_seminar-list .seminar_list .cate.ftof::before{
		width: 8px;
		height: 12px;
		background: url(../a_images/top/icon_human.svg) no-repeat left center / 8px auto;
	}
	/* title */
	#under_seminar-list .seminar_list .title{
		margin-top: 10px;
		padding-bottom: 15px;
		font-size: 1.4rem;
		text-align: left;
	}
	/* info */
	#under_seminar-list .seminar_list .info li{
		font-size: 1rem;
	}
	#under_seminar-list .seminar_list .info li::before{
		top: 1px;
	}
	/* タグ */
	#under_seminar-list .seminar_list .tag{
		margin-top: 7px;
		margin-right: -5px;
		padding: 0 4px;
	}
	#under_seminar-list .seminar_list .tag li{
		margin-right: 5px;
		margin-top: 8px;
	}
	#under_seminar-list .seminar_list .tag li a{
		padding: 5px 15px;
		font-size: 1rem;
	}
	/* status */
	#under_seminar-list .seminar_list .status{
		width: 70px;
		height: 70px;
		top: -35px;
		right: -10px;
		font-size: 1.2rem;
	}
	#under_seminar-list .seminar_list .status_level3::before{
		clip-path: polygon(100% 0, 100% calc(100% - 20px), calc(100% - 20px) 100%, 0 100%, 0 0);
	}
	#under_seminar-list .seminar_list > .btn_wrap{
		margin-top: 40px;
		padding: 0 30px;
	}
	#under_seminar-list .seminar_list > .btn_wrap a{
		width: 100%;
		max-width: 240px;
	}
	/* 詳細へのボタン */
	#under_seminar-list .seminar_list article .btn_wrap{
		margin-top: 15px;
	}
	#under_seminar-list .seminar_list article .btn_wrap a{
		padding-top: 8px;
		padding-bottom: 6px;
		width: 160px;
		font-size: 1.3rem;
	}
}

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

	3.ページネーション

==============================================================================================================================================================
============================================================================================================================================================*/
#under_seminar-list .pagenation{
	margin-top: 70px;
	margin-left: 40px;
	width: 100%;
}
#under_seminar-list .pagenation ul{
	margin-left: -13px;
	display: flex;
    flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
#under_seminar-list .pagenation ul li {
	margin-left: 13px;
}
#under_seminar-list .pagenation ul li span,
#under_seminar-list .pagenation ul li a{
    padding: 0;
    width: 40px;
    height: 40px;
	max-width: 100%;
    display: flex;
    line-height: 1;
    justify-content: center;
    align-content: center;
    align-items: center;
    font-size: 1.8rem;
    transition: 500ms;
    border-radius: 100%;
    background-repeat: no-repeat;
    background-position: center;
	font-family: var(--font-en);
	color: var(--color-black);
}
#under_seminar-list .pagenation ul li.num span{
	background-color: var(--color-base);
	color: #fff;
}
#under_seminar-list .pagenation ul li.prev{
	margin-right: 30px;
    width: 15px;
}
#under_seminar-list .pagenation ul li.prev a{
	background: url(../a_images/blog/icon_prev.svg) no-repeat center;
}
#under_seminar-list .pagenation ul li.next{
	margin-left: 30px;
    width: 15px;
}
#under_seminar-list .pagenation ul li.next a{
	background: url(../a_images/blog/icon_next.svg) no-repeat center;
}
/*==============================================================================

	ページネーション スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_seminar-list .pagenation{
		margin-left: 0px;
	}
	#under_seminar-list .pagenation ul li span,
	#under_seminar-list .pagenation ul li a{
		width: 35px;
		height: 35px;
	}
	#under_seminar-list .pagenation ul li.prev{
		margin-right: 2ch;
	}
	#under_seminar-list .pagenation ul li.next{
		margin-left: 20px;
	}
}




@charset "UTF-8";
#under_seminar-list section.detail{
    position: relative;
}
#under_seminar-list section.detail .section_inner{
	padding: 70px 90px 100px;
    position: relative;
	background-color: #fff;
    clip-path: polygon(100% 0, 100% calc(100% - 30px), calc(100% - 30px) 100%, 0 100%, 0 0);
}
#under_seminar-list section.detail .section_inner::before {
    content: "";
    width: 30px;
    height: 30px;
    position: absolute;
    z-index: 1;
    bottom: 0;
    right: 0;
    background: linear-gradient(-45deg, rgb(255 255 255 / 0) 50%, rgb(216 216 216 / 1) 50%);
}
@media all and (max-width: 768px){
	#under_seminar-list section.detail .section_inner{
        padding: 18px 15px 60px;
    }
}


/*==============================================================================
	ステータス
==============================================================================*/
#under_seminar-list .status{
	width: 150px;
	height: 150px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border-radius: 100%;
	color: #fff;
	font-style: var(--font-ver1);
	font-weight: var(--weight-bold);
    font-size: 2.6rem;
	position: absolute;
	top: -40px;
	right: -40px;
	z-index: 3;
	box-shadow: 3px 3px 0px 0px rgb(0 0 0 / 0.2);
}
#under_seminar-list .status_level1 .status{
	background-color: #4f700f;
}
#under_seminar-list .status_level2 .status{
	background-color: #ea5550;
}
@media all and (max-width: 768px){
	#under_seminar-list .status{
        width: 70px;
        height: 70px;
        font-size: 1.2rem;
        top: -40px;
        right: 10px;
    }
}

/*==============================================================================
	対面 / オンライン収録
==============================================================================*/
#under_seminar-list section.detail .cate{
	padding-left: 25px;
	color: var(--color-base);
	font-weight: var(--weight-bold);
	position: relative;
}
#under_seminar-list section.detail .cate::before{
	content:"";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
#under_seminar-list section.detail .cate.ftof_online{
	padding-left: 50px
}
#under_seminar-list section.detail .cate.ftof_online::before{
	width: 40px;
	height: 18px;
	background: 
	url(../a_images/top/icon_movie.svg) no-repeat right center,
	url(../a_images/top/icon_human.svg) no-repeat left center;
}
#under_seminar-list section.detail .cate.online{
	padding-left: 30px;
}
#under_seminar-list section.detail .cate.online::before{
	width: 18px;
	height: 14px;
	background: url(../a_images/top/icon_movie.svg) no-repeat right center;
}
#under_seminar-list section.detail .cate.ftof::before{
	width: 12px;
	height: 18px;
	background: url(../a_images/top/icon_human.svg) no-repeat left center;
}
@media all and (max-width: 768px){
    #under_seminar-list section.detail .cate{
        padding-left: 25px;
        font-size: 1rem;
    }
    #under_seminar-list section.detail .cate.ftof_online{
        padding-left: 35px
    }
    #under_seminar-list section.detail .cate.ftof_online::before{
        width: 26px;
        height: 12px;
        background: 
        url(../a_images/top/icon_movie.svg) no-repeat right center / 13px auto ,
        url(../a_images/top/icon_human.svg) no-repeat left center / 8px auto;
    }
    #under_seminar-list section.detail .cate.online{
        padding-left: 20px;
    }
    #under_seminar-list section.detail .cate.online::before{
        width: 13px;
        height: 11px;
        background: url(../a_images/top/icon_movie.svg) no-repeat right center / 13px auto ;
    }
    #under_seminar-list section.detail .cate.ftof{
        padding-left: 15px;
    }
    #under_seminar-list section.detail .cate.ftof::before{
        width: 8px;
        height: 12px;
        background: url(../a_images/top/icon_human.svg) no-repeat left center / 8px auto;
    }
}

/*==============================================================================
	メイン画像
==============================================================================*/
#under_seminar-list .main_img{
    margin-top: 65px;
    text-align: center;
}
#under_seminar-list .main_img img{
    max-width: 100%;
    height: 100%;
}
@media all and (max-width: 768px){
    #under_seminar-list .main_img{
        margin-top: 20px;
    }
}

/*==============================================================================
	タイトル
==============================================================================*/
#under_seminar-list .detail h1{
    margin-top: 60px;
    padding-bottom: 56px;
    position: relative;
    text-align: center;
    font-weight: 700;
    font-style: var(--font-ver1);
    font-size: 3.5rem;
    letter-spacing: 0.15em;
}
#under_seminar-list .detail h1::after{
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 799px;
    height: 51px;
    background-image: url(../a_images/seminar/list/title.svg);
    background-size: 799px auto;
    background-repeat: no-repeat;
    background-position: top left;
}
@media all and (max-width: 768px){
    #under_seminar-list .detail h1{
        margin-top: 20px;
        padding-bottom: 0px;
        font-size: 1.6rem;
    }
    #under_seminar-list .detail h1::after{
        content: none;
    }
}

/*==============================================================================
	講座申込ボタン
==============================================================================*/
#under_seminar-list .application.btn_wrap{
    margin: 40px auto 0;
    width: 630px;
}
#under_seminar-list .application.btn_wrap.bottom{
    margin-top: 85px;
}
#under_seminar-list .application.btn_wrap a,
#under_seminar-list .application.btn_wrap span{
    width: 100%;
}
@media all and (max-width: 768px){
    #under_seminar-list .application.btn_wrap{
        margin: 40px auto 0;
        width: 100%;
    }
    #under_seminar-list .application.btn_wrap.bottom{
        margin-top: 30px;
    }
    #under_seminar-list .application.btn_wrap a,
    #under_seminar-list .application.btn_wrap span{
        max-width: 240px;
    }
}

/*==============================================================================
	講座の概要
==============================================================================*/
#under_seminar-list .overview{
    margin: 40px auto 0;
    width: 795px;
}
#under_seminar-list .overview >  dl{
    display: flex;
}
#under_seminar-list .overview > dl + dl{
    margin-top: 25px;
}
#under_seminar-list .overview > dl > dt{
    padding-right: 20px;
    width: 160px;
    font-family: var(--font-ver1);
    font-weight: var(--weight-bold);
    color: var(--color-base);
}
#under_seminar-list .overview > dl > dd{
    width: calc(100% - 160px);
    line-height: 1.8;
}
#under_seminar-list .overview > dl > dt{
    padding-left: 40px;
    position: relative;
}
#under_seminar-list .overview > dl > dt:before{
    content:"";
    width: 20px;
    height: 20px;
    position: absolute;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px;
    top: 0;
    left: 4px;
}
#under_seminar-list .overview > dl dt.open:before{
    background-image: url(../a_images/seminar/list/icon-open.svg);
}
#under_seminar-list .overview > dl dt.online:before{
    background-image: url(../a_images/seminar/list/icon-online.svg);
}
#under_seminar-list .overview > dl dt.seminar:before{
    background-image: url(../a_images/seminar/list/icon-seminar.svg);
}
#under_seminar-list .overview > dl dt.price:before{
    background-image: url(../a_images/seminar/list/icon-price.svg);
}
#under_seminar-list .overview > dl dt.discount:before{
    background-image: url(../a_images/seminar/list/icon-discount.svg);
}
#under_seminar-list .overview > dl dt.teacher:before{
    background-image: url(../a_images/seminar/list/icon-teacher.svg);
}
#under_seminar-list .overview > dl dt.tag:before{
    background-image: url(../a_images/seminar/list/icon-tag.svg);
}
#under_seminar-list .overview > dl > dd > * + *{
    margin-top: 20px;
}
#under_seminar-list .overview > dl > dd img{
    max-width: 100%;
}
#under_seminar-list .overview > dl > dd table{
    width: 100%;
    border-bottom: 2px solid #c4993d;
}
#under_seminar-list .overview > dl > dd table th{
    padding: 15px 50px;
    border-top: 2px solid #c4993d;
    border-bottom: 2px solid #c4993d;
    background-color: #f3ebd8;
}
#under_seminar-list .overview > dl > dd table td{
    padding: 15px 50px;
}
#under_seminar-list .overview > dl > dd a[target="_blank"]{
    margin-right: 5px;
    padding-right: 20px;
    display: inline-block;
    position: relative;
}
#under_seminar-list .overview > dl > dd a[target="_blank"]::after {
    width: calc(15px);
    height: calc(15px);
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background: url(../a_images/icon_window.svg);
    background-repeat: no-repeat;
    background-size: 15px auto;
}
#under_seminar-list .overview > dl > dd ul{
    padding-left: 0px;
    list-style: none;
}
#under_seminar-list .overview > dl > dd ul li{
    margin-bottom: 0;
    padding-left: 20px;
    position: relative;
}
#under_seminar-list .overview > dl > dd ul > li + li{
    margin-top: 5px;
}
#under_seminar-list .overview > dl > dd ul > li::after{
    content:"";
    position: absolute;
    width: 12px;
    height: 12px;
    background-color: var(--color-base);
    left: 0;
    top: calc(0.5em);
    border-radius: 100%;
}
#under_seminar-list .overview > dl > dd ol{
    margin-bottom: 0;
    padding-left: 0px;
    list-style: none;
    counter-reset: item;
}
#under_seminar-list .overview > dl > dd ol > li{
    padding-left: 20px;
    position: relative;
}
#under_seminar-list .overview > dl > dd ol > li + li{
    margin-top: 5px;
}
#under_seminar-list .overview > dl > dd ol > li::after{
    counter-increment: item;
    content: counter(item)'.';
    position: absolute;
    left: 0;
    top: 0;
}
#under_seminar-list .overview > dl > dd strong{
    background-image: linear-gradient(transparent 60%, rgba(196, 153, 61, 0.3) 70%)
}
#under_seminar-list .overview .discount_application{
    text-align: left;
}
#under_seminar-list .overview .discount_application a{/* 割引のオンライン申し込みボタン */
    padding-top: 15px;
    padding-bottom: 15px;
    font-size: 1.1rem;
} 

@media all and (max-width: 768px){
    #under_seminar-list .overview{
        width: 100%;
    }
    #under_seminar-list .overview >  dl{
        flex-direction: column;
    }
    #under_seminar-list .overview > dl + dl{
        margin-top: 25px;
    }
    #under_seminar-list .overview > dl > dt{
        padding-right: 0px;
        width: 100%;
        font-size: 1.6rem;
    }
    #under_seminar-list .overview > dl > dt:before{
        top: 3px;
    }
    #under_seminar-list .overview > dl > dd{
        margin-top: 10px;
        width: 100%;
    }
    #under_seminar-list .overview > dl > dd table th{
        padding: 15px 20px;
    }
    #under_seminar-list .overview > dl > dd table td{
        padding: 15px 20px;
    }
}

/*==============================================================================
	detail内のsectionの設定
==============================================================================*/
#under_seminar-list .detail .section_inner > section{
    margin: 80px auto 0;
    width: 800px;
}
#under_seminar-list .detail .section_inner > section h2{
    margin-bottom: 50px;
    padding-bottom: 20px;
    position: relative;
    text-align: center;
    font-weight: 700;
    font-style: var(--font-ver1);
    font-size: 2.5rem;
    color: var(--color-base);
    letter-spacing: 0.15em;
}
#under_seminar-list .detail .section_inner > section h2::after{
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 799px;
    height: 51px;
    background-image: url(../a_images/seminar/list/title.svg);
    background-size: 799px auto;
    background-repeat: no-repeat;
    background-position: top left;
    pointer-events: none;
}

@media all and (max-width: 768px){
    #under_seminar-list .detail .section_inner > section{
        margin: 40px auto 0;
        width: 100%;
    }
    #under_seminar-list .detail .section_inner > section h2{
        margin-bottom: 25px;
        border-bottom: 1px solid var(--color-base);
        font-size: 2rem;
    }
    #under_seminar-list .detail .section_inner > section h2::after{
        content: none;
    }
}

/*==============================================================================
	担当講師
==============================================================================*/
#under_seminar-list .teacher_detail figure{
    display: flex;
    align-items: flex-start;
}
#under_seminar-list .teacher_detail figure + figure{
    margin-top: 50px;
}
#under_seminar-list .teacher_detail figure > figcaption{
    padding-right: 35px;
    width: calc(100% - 200px);
    order: 1;
}
#under_seminar-list .teacher_detail figure > figcaption .name{
    font-size: 1.8rem;
}
#under_seminar-list .teacher_detail figure > figcaption .name span[lang="en"]{
    margin-left: 1em;
}
#under_seminar-list .teacher_detail figure > figcaption ul{
    margin-top: 15px;
    padding-left: 0px;
    list-style: none;
}
#under_seminar-list .teacher_detail figure > figcaption ul li{
    margin-bottom: 0;
    padding-left: 20px;
    position: relative;
}
#under_seminar-list .teacher_detail figure > figcaption ul > li + li{
    margin-top: 5px;
}
#under_seminar-list .teacher_detail figure > figcaption ul > li::after{
    content:"";
    position: absolute;
    width: 12px;
    height: 12px;
    background-color: var(--color-base);
    left: 0;
    top: calc(0.4em);
    border-radius: 100%;
}
#under_seminar-list .teacher_detail figure > img{
    width: 200px;
    order: 2;
}
@media all and (max-width: 768px){
    #under_seminar-list .teacher_detail figure{
        flex-direction: column;
        align-items: center;
    }
    #under_seminar-list .teacher_detail figure > img{
        max-width: 140px;
        height: auto;
        order: 1;
    }
    #under_seminar-list .teacher_detail figure > figcaption{
        margin-top: 25px;
        padding-right: 0;
        width: 100%;
        order: 2;
    }
    #under_seminar-list .teacher_detail figure > figcaption .name span[lang="en"]{
        margin-left: 0;
        display: block; 
    }
}

/*==============================================================================
	対面受講講座概要
==============================================================================*/
#under_seminar-list .course_overview tr th,
#under_seminar-list .course_overview tr td{
    padding: 13px;
}
#under_seminar-list .course_overview tr th{
    padding-left: 30px;
    width: 120px;
}
#under_seminar-list .course_overview.set tr th{
	width: 160px;
}
#under_seminar-list .course_overview tr:nth-of-type(odd) th,
#under_seminar-list .course_overview tr:nth-of-type(odd) td{
    background-color: var(--color-gray);
}
#under_seminar-list .course_overview.set ul.series-list li {
	line-height: 1.66;
	padding-left: 1em;
	text-indent: -1em;
}
#under_seminar-list .course_overview.set ul.series-list li:before {
	content:'・';
}
#under_seminar-list .course_overview .btn_wrap{
    margin-top: 60px;
}
#under_seminar-list .course_overview .btn_wrap a{
    margin: 0 10px;
    padding-top: 15px;
    padding-bottom: 15px;
    width: 220px;
    font-size: 1.1rem;
}
#under_seminar-list .course_overview .btn_wrap a::after{
    width: 10px;
    height: 7px;
    right: 16px;
}
@media all and (max-width: 768px){
    #under_seminar-list .course_overview tr th,
    #under_seminar-list .course_overview tr td,
	#under_seminar-list .course_overview.set tr th,
	#under_seminar-list .course_overview.set tr td{
        padding: 13px 20px;
        width: 100%;
        display: block
    }
    #under_seminar-list .course_overview tr th{
        background-color: var(--color-gray)!important;
    }
    #under_seminar-list .course_overview tr td{
        background-color: #fff!important;
    }
    #under_seminar-list .course_overview .btn_wrap{
        margin-top: 30px;
    }
    #under_seminar-list .course_overview .btn_wrap a{
        margin: 5px 10px;
        padding-top: 15px;
        padding-bottom: 15px;
        width: 220px;
        font-size: 1.1rem;
    }
}

/*==============================================================================
	google map
==============================================================================*/
#under_seminar-list .map_content{
    width: 100%;
    aspect-ratio: 5 / 2;
    background-color:  #e3d8ba;
}
#under_seminar-list .map p{
    margin-top: 20px;
}


/*==============================================================================
	リストに戻るボタン / 前後の記事
==============================================================================*/
#under_seminar-list .pagenation_detail{
    margin: auto;
    padding: 65px 0 120px;
    width: 635px;
}
#under_seminar-list .pagenation_detail .btn_wrap a{
    width: 100%;
}
#under_seminar-list .nav_post_list {
    margin-top: 40px;
    padding: 0px;
    border: none;
    margin-bottom: 0px;
    justify-content: stretch;
    list-style: none;
}
#under_seminar-list .nav_post_list li{
    margin: 0;
    font-size: 1.4rem;
}
/* 前と後の記事どちらもある場合 */
#under_seminar-list .nav_post_list.columns_2{
    display: flex;
}
#under_seminar-list .nav_post_list.columns_2 .previous,
#under_seminar-list .nav_post_list.columns_2 .next{
    width: 50%;
    flex-basis: 50%;
}
#under_seminar-list .nav_post_list.columns_2 a{
    display: flex;
    height: 100%;
    align-items: center;
}
#under_seminar-list .nav_post_list.columns_2 .previous a{
    padding-right: 30px;
    padding-left: 40px;
    justify-content: flex-start;
    text-align: left;
}
#under_seminar-list .nav_post_list.columns_2 .next a{
    padding-right: 40px;
    padding-left: 30px;
    justify-content: flex-end;
    text-align: left;
}
#under_seminar-list .nav_post_list.columns_2 .next{
    border-left: 1px solid var(--color-base);
}

/* 前後どちらかがない場合 */
#under_seminar-list .nav_post_list.columns_1{
    display: block;
}
#under_seminar-list .nav_post_list.columns_1 a{
    padding: 0;
    display: inline-block;
}
/* 前の記事しかない場合 */
#under_seminar-list .nav_post_list.columns_1_prev{
	text-align: left;
}
#under_seminar-list .nav_post_list.columns_1_prev a{
    padding-left: 40px;
}
/* 次の記事しかない場合 */
#under_seminar-list .nav_post_list.columns_1_next{
	text-align: right;
}
#under_seminar-list .nav_post_list.columns_1_next a{
    padding-right: 40px;
    text-align: right;
}
/* 共通 */
#under_seminar-list .nav_post_list a{
    padding-top: 30px;
    padding-bottom: 30px;
    font-size: 1.4rem;
    position: relative;
    transition: 500ms;
}
/* 矢印 */
#under_seminar-list .nav_post_list a::after{
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-size: 7px;
}
#under_seminar-list .nav_post_list .previous a::after{
    left: 0px;
    background: url(../a_images/blog/icon_prev.svg) no-repeat center;
}
#under_seminar-list .nav_post_list .next a::after{
    right: 0px;
    background: url(../a_images/blog/icon_next.svg) no-repeat center;
}

@media all and (max-width: 768px){
    #under_seminar-list .pagenation_detail{
        margin: auto;
        padding: 45px 0 50px;
        width: calc(100% - 40px);
    }
    #under_seminar-list .nav_post_list {
        margin-top: 30px;
    }
    /* 前と後の記事がある場合 */
    #under_seminar-list .nav_post_list.columns_2 .previous a{
        padding-right: 20px;
        padding-left: 30px;
    }
    #under_seminar-list .nav_post_list.columns_2 .next a{
        padding-right: 30px;
        padding-left: 20px;
    }    
    /* 前の記事しかない場合 */
    #under_seminar-list .nav_post_list.columns_1_prev a{
        padding-left: 30px;
    }
    /* 次の記事しかない場合 */
    #under_seminar-list .nav_post_list.columns_1_next a{
        padding-right: 30px;
    }
    
    #under_seminar-list .nav_post_list a{
        padding-top: 15px;
        padding-bottom: 15px;
        font-size: 12px;
    }
}


#under_blog .h1 {
    background-image: url(../a_images/blog/title.jpg);
}
#under_blog .h1::before {
    background: url(../a_images/wave_gray_line.svg) repeat-x top center;
}
#under_blog .pankuzu{
	background-color: var(--color-gray);
	padding-bottom: 100px;
}
#under_blog #content{
	padding-bottom: 100px;
	background-color: var(--color-gray);
}
/*==============================================================================

	スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_blog .h1::before {
		background: url(../../a_images/sp_wave_gray_line.svg) repeat-x top left calc(50% + 110px);
	}
	#under_blog .pankuzu{
		padding-bottom: 75px;
	}
}
/*============================================================================================================================================================
==============================================================================================================================================================

	1.カテゴリ一覧

==============================================================================================================================================================
============================================================================================================================================================*/
#under_blog #cate_list{
	margin-bottom: 60px;
}
#under_blog #cate_list ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#under_blog #cate_list ul li{
	width: 150px;
	border-left: 1px solid var(--color-black);
}
#under_blog #cate_list ul li:last-child{
	border-right: 1px solid var(--color-black);
}
#under_blog #cate_list ul li em,
#under_blog #cate_list ul li a{
	padding: 5px;
	width: 100%;
	display: block;
	text-align: center;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#under_blog #cate_list ul li em{
	color: var(--color-base);
}
#under_blog #cate_list ul li em span{ 
    display: inline-block;
    position: relative;
}
#under_blog #cate_list ul li em span::after {
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    left: 0;
    bottom: -6px;
    border-top: 1px solid #c4993d;
    border-bottom: 1px solid #c4993d;
}
#under_blog #cate_list ul li a{
	color: #bcb9b0;
}

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

	カテゴリ一覧 スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_blog #cate_list{
		margin-bottom: 30px;
	}
    #under_blog #cate_list ul li {
        margin-top: 10px;
        width: calc(100% / 2);
        border-left: 1px solid #3e3a39;
        border-right: 1px solid #3e3a39;
        text-align: center;
    }
    #under_blog #cate_list ul li:nth-of-type(even) {
        border-left: none;
    }
}

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

	2.NEW

==============================================================================================================================================================
============================================================================================================================================================*/
#under_blog .article_list .new {
	margin-bottom: 100px;
}
#under_blog .article_list .new figure{
	display: flex;
	align-items: center;
}
#under_blog .article_list .new figure .img{
	width: 590px;
	height: 394px;
}
#under_blog .article_list .new figure .img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
#under_blog .article_list .new figure figcaption{
	padding-left: 60px;
	width: calc(100% - 590px);
}
/* NEWの文字 */
#under_blog .article_list .new .article_new_text{
	text-align: left;
	font-size: 9rem;
    line-height: 1;
	font-family: var(--font-en);
}
#under_blog .article_list .new .article_new_text span{
	display: inline-block;
    letter-spacing: 0.2em;
    position: relative;
	color: var(--color-gray);
    z-index: 1;
}
#under_blog .article_list .new .article_new_text span::before {
    content: attr(data-text);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    color: var(--color-base);
    -webkit-text-stroke: 4px var(--color-base);
    mix-blend-mode: multiply;
    text-shadow: -3px 4px 0px var(--color-base);
}
/* カテゴリと日付 */
#under_blog .article_list .new .article_cate_date{
	margin-top: 30px;
    display: flex;
    align-items: center;
	justify-content: space-between;
}
#under_blog .article_list .new .article_cate_date .article_cate{
    padding: 6px 10px;
    min-width: 120px;
	max-width: 60%;
    display: block;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    display: block;
    color: #fff;
    background-color: var(--color-base);
    text-align: center;
    font-size: 1.3rem;
    font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#under_blog .article_list .new .article_cate_date .article_date{
    width: 40%;
    text-align: right;
    font-family: var(--font-en);
    font-size: 1.4rem;
    color: var(--color-base);
}
/* 記事タイトル */
#under_blog .article_list .new .article_title{
	margin-top: 15px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}
#under_blog .article_list .new .article_title a{
	color: var(--color-black);
    font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 1.4rem;
}
/* タグ */
#under_blog .article_list .new .article_tag{
	margin-top: 5px;
    margin-left: -15px;
    display: flex;
    flex-wrap: wrap;
}
#under_blog .article_list .new .article_tag li {
    margin-top: 10px;
    margin-left: 15px;
    padding-left: 1.1em;
    line-height: 1.2;
    text-indent: -1.1em;
}
#under_blog .article_list .new .article_tag li a {
    position: relative;
    font-size: 1.1rem;
    color: #4f700f;
    font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}

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

	NEW スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_blog .article_list .new {
		margin-bottom: 30px;
        width: calc(100% - 20px);
	}
	#under_blog .article_list .new figure{
		flex-wrap: wrap;
	}
	#under_blog .article_list .new figure .img{
		width: 100%;
        height: 100%;
		aspect-ratio: 3 / 2;
	}
	#under_blog .article_list .new figure figcaption{
		padding-left: 0px;
		width: calc(100%);
	}
	/* NEWの文字 */
	#under_blog .article_list .new .article_new_text{
		margin-top: -2rem;
		text-align: center;
		font-size: 4rem;
	}
	/* カテゴリと日付 */
	#under_blog .article_list .new .article_cate_date{
		margin-top: 15px;
	}
	#under_blog .article_list .new .article_cate_date .article_cate{
		padding: 4px 5px;
		max-width: 50%;
		font-size: 1rem;
	}
	#under_blog .article_list .new .article_cate_date .article_date{
		width: 50%;
	}
	/* 記事タイトル */
	#under_blog .article_list .new .article_title{
		margin-top: 10px;
		line-height: 1.3;
	}
	/* タグ */
	#under_blog .article_list .new .article_tag{
		margin-top: 5px;
		margin-left: -10px;
	}
	#under_blog .article_list .new .article_tag li {
		margin-top: 5px;
		margin-left: 10px;
	}
	#under_blog .article_list .new .article_tag li a {
		font-size: 1rem;
	}
}

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

	2.記事一覧

==============================================================================================================================================================
============================================================================================================================================================*/
#under_blog .article_list{
	margin-left: -40px;
	display: flex;
	flex-wrap: wrap;
	justify-content: left;
}
#under_blog .article_list article{
	margin-left: 40px;
}
#under_blog .article_list article:not(.new) {
	margin-top: 50px;
	width: 300px;
}
#under_blog .article_list article:not(.new) figure .img{
	width: 100%;
	display: block;
    aspect-ratio: 3 / 2;
}
#under_blog .article_list article:not(.new) figure .img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
#under_blog .article_list article:not(.new) figure figcaption{
	margin-top: 30px;
}
/* カテゴリと日付 */
#under_blog .article_list article:not(.new) figure figcaption .article_cate_date{
	margin-top: 30px;
    display: flex;
    align-items: center;
	justify-content: space-between;
}
#under_blog .article_list article:not(.new) figure figcaption .article_cate_date .article_cate{
    padding: 6px 10px;
    min-width: 120px;
	max-width: 60%;
    display: block;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    color: #fff;
    background-color: var(--color-base);
    text-align: center;
    font-size: 1.3rem;
    font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#under_blog .article_list article:not(.new) figure figcaption .article_cate_date .article_date{
    width: 40%;
    text-align: right;
    font-family: var(--font-en);
    font-size: 1.4rem;
    color: var(--color-base);
}
/* 記事タイトル */
#under_blog .article_list article:not(.new) figure figcaption .article_title{
	margin-top: 15px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
#under_blog .article_list article:not(.new) figure figcaption .article_title a{
	color: var(--color-black);
    font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 1.4rem;
}
/* タグ */
#under_blog .article_list article:not(.new) figure figcaption .article_tag{
	margin-top: 5px;
    margin-left: -15px;
    display: flex;
    flex-wrap: wrap;
}
#under_blog .article_list article:not(.new) figure figcaption .article_tag li {
    margin-top: 10px;
    margin-left: 15px;
    padding-left: 1.1em;
    line-height: 1.2;
    text-indent: -1.1em;
}
#under_blog .article_list article:not(.new) figure figcaption .article_tag li a {
    position: relative;
    font-size: 1.1rem;
    color: #4f700f;
    font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
/*==============================================================================

	記事一覧 スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_blog .article_list{
		margin-left: -20px;
	}
	#under_blog .article_list article{
		margin-left: 20px;
	}
	#under_blog .article_list article:not(.new) {
		margin-top: 25px;
		width: calc(50% - 20px);
	}
	#under_blog .article_list article:not(.new) figure figcaption{
		margin-top: 20px;
	}
	/* カテゴリと日付 */
	#under_blog .article_list article:not(.new) figure figcaption .article_cate_date{
		margin-top: 0px;
	}
	#under_blog .article_list article:not(.new) figure figcaption .article_cate_date .article_cate{
		padding: 4px 5px;
		min-width: 50%;
		max-width: 50%;
		font-size: 1rem;
        letter-spacing: 0.1em;
	}
	#under_blog .article_list article:not(.new) figure figcaption .article_cate_date .article_date{
		font-size: 1rem;
        letter-spacing: 0.1em;
	}
	/* 記事タイトル */
	#under_blog .article_list article:not(.new) figure figcaption .article_title{
		margin-top: 10px;
		line-height: 1.2;
	}
	#under_blog .article_list article:not(.new) figure figcaption .article_title a{
		font-size: 1.4rem;
	}
	/* タグ */
	#under_blog .article_list article:not(.new) figure figcaption .article_tag{
		margin-top: 5px;
		margin-left: -10px;
	}
	#under_blog .article_list article:not(.new) figure figcaption .article_tag li {
		margin-top: 5px;
		margin-left: 10px;
	}
	#under_blog .article_list article:not(.new) figure figcaption .article_tag li a {
		font-size: 1rem;
	}
}
/*============================================================================================================================================================
==============================================================================================================================================================

	3.ページネーション

==============================================================================================================================================================
============================================================================================================================================================*/
#under_blog .pagenation{
	margin-top: 70px;
	margin-left: 40px;
	width: 100%;
}
#under_blog .pagenation ul{
	margin-left: -13px;
	display: flex;
    flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}
#under_blog .pagenation ul li {
	margin-left: 13px;
}
#under_blog .pagenation ul li span,
#under_blog .pagenation ul li a{
    padding: 0;
    width: 40px;
    height: 40px;
	max-width: 100%;
    display: flex;
    line-height: 1;
    justify-content: center;
    align-content: center;
    align-items: center;
    font-size: 1.8rem;
    transition: 500ms;
    border-radius: 100%;
    background-repeat: no-repeat;
    background-position: center;
	font-family: var(--font-en);
	color: var(--color-black);
}
#under_blog .pagenation ul li.num span{
	background-color: var(--color-base);
	color: #fff;
}
#under_blog .pagenation ul li.prev{
	margin-right: 30px;
    width: 15px;
}
#under_blog .pagenation ul li.prev a{
	background: url(../a_images/blog/icon_prev.svg) no-repeat center;
}
#under_blog .pagenation ul li.next{
	margin-left: 30px;
    width: 15px;
}
#under_blog .pagenation ul li.next a{
	background: url(../a_images/blog/icon_next.svg) no-repeat center;
}
/*==============================================================================

	ページネーション スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_blog .pagenation ul li span,
	#under_blog .pagenation ul li a{
		width: 35px;
		height: 35px;
	}
	#under_blog .pagenation ul li.prev{
		margin-right: 2ch;
	}
	#under_blog .pagenation ul li.next{
		margin-left: 20px;
	}
}

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

	4.カテゴリ/アーカイブ/キーワード/記事がない場合

==============================================================================================================================================================
============================================================================================================================================================*/
#under_blog .sub_title{
	text-align: center;
	font-family: var(--font-ver1);
	font-size: 2.4rem;
	font-weight: var(--weight-bold);
	color: var(--color-base);
}
#under_blog .sub_title + .article_none{
	margin-top: 70px;
}
#under_blog .article_none{
	text-align: center;
	line-height: 1.8;
}
#under_blog .search_result_form{
    margin: 35px auto 0;
    width: 280px;
}
#under_blog .search_result_form form {
    position: relative;
    border: 1px solid #c4993d;
    display: flex;
}
#under_blog .search_result_form form input {
    margin: 0;
    width: calc(100% - 35px);
    height: auto;
    padding: 10px 15px;
    border: none;
    font-size: 1.2rem;
}
#under_blog .search_result_form form button {
    width: 35px;
    font-size: 0;
    border: none;
    background-image: url(../a_images/blog/icon_search.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-color: #c4993d;
    background-size: 15px;
    cursor: pointer;
    opacity: 1;
    transition: opacity 500ms;
}
/*==============================================================================

	記事一覧 スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_blog .sub_title{
		font-size: 2rem;
	}
	#under_blog .sub_title + .article_none{
		margin-top: 35px;
	}
}




#under_blog #content_single {
    padding-bottom: 100px;
    background-color: var(--color-gray);
}
#under_blog #content_single > .inner{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#under_blog #article_wrap{
	width: 620px;
}
#under_blog #sidebar{
	width: 280px;
}
@media all and (max-width: 768px){
	#under_blog #article_wrap{
		width: 100%;
	}
}

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

	1.記事本体

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

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

	記事タイトル部分

==============================================================================*/
#under_blog #content_single .title_block{
    padding-bottom: 20px;
    margin-bottom: 45px;
    border-bottom: double 4px var(--color-base); 
}
/*==================== カテゴリとタグ ====================*/
#under_blog #content_single .cate_tag{
    display: flex;
    align-items: flex-start;
    font-size: 1.2rem;
}
/* カテゴリ */
#under_blog #content_single .cate_tag .cate a{
    padding: 8px 0;
    width: 130px;
    display: block;
    color: #fff;
    font-size: 1.3rem;
    text-align: center;
    background-color: var(--color-base);
}
#under_blog #content_single .cate_tag .cate a{
    transition: 500ms;
}
#under_blog #content_single .cate_tag .cate a:hover{
    opacity: 0.6;
}
/* タグ */
#under_blog #content_single .cate_tag .tag{
    margin-top: 8px;
    width: calc(100% - 150px);
}
#under_blog #content_single .cate_tag .tag ul{
    margin-top: -5px;
    display: flex;
    flex-wrap: wrap;
}
#under_blog #content_single .cate_tag .tag ul li{
    margin-top: 5px;
    margin-left: 20px;
    padding-left: 1.1em;
    line-height: 1.5;
    text-indent: -1.1em;
}
#under_blog #content_single .cate_tag .tag ul li a{
    color: #4f700f;
}
#under_blog #content_single .cate_tag .tag ul li a::before{
    content:"＃";
}
/*==================== 日付 ====================*/
#under_blog #content_single  .date{
    margin-top: 30px;
    font-size: 1.4rem;
    color: var(--color-base);
}
/*==================== h1 ====================*/
#under_blog #content_single  .title_block h1{
    margin-top: 20px;
    font-size: 2.2rem;
    color: var(--color-base);
    line-height: 1.6;
}
/*==============================================================================

	見出し・その他

==============================================================================*/
#under_blog #content_single .article_content h2{
    margin-bottom: 30px;
    padding: 10px 125px 10px 20px;
    color: #fff;
    font-size: 2.6rem;
    background-image: url(../a_images/blog/h2_bg.svg);
	background-repeat: repeat-y;
	background-position: right 3px;
	background-color: var(--color-base);
}
#under_blog #content_single .article_content h3{
    margin-bottom: 30px;
    padding: 10px 10px 10px 20px;
    color: var(--color-base);
    font-size: 2rem;
    border-bottom: double 4px var(--color-base); 
}
#under_blog #content_single .article_content h4{
	margin-bottom: 30px;
	padding: 10px 10px 10px 20px;
	color: #3e3a39;
	font-size: 1.8rem;
	border-bottom: 1px solid #bcb9b0;
}
/* figure */
#under_blog #content_single .article_content figure{
    margin-bottom: 40px;
}
#under_blog #content_single .article_content figure img{
	width: 100%;
	height: auto;
}
#under_blog #content_single .article_content figure figcaption {
	text-align: center;
	margin-top: 10px;
	
}
/* 吹き出し */
#under_blog #content_single .article_content .fukidashi{
    padding-left: 20px;
    padding-right: 20px;
    display: inline-block;
    box-sizing: border-box;
    position: relative;
}
#under_blog #content_single .article_content .fukidashi::before,
#under_blog #content_single .article_content .fukidashi::after {
    content: "";
    width: 17px;
    height: 17px;
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
#under_blog #content_single  .article_content .fukidashi::before {
    left: 0;
    background: url(../a_images/blog/fukidashi_left.svg) no-repeat center / 17px auto;
}
#under_blog #content_single  .article_content .fukidashi::after {
    right: 0;
    background: url(../a_images/blog/fukidashi_right.svg) no-repeat center / 17px auto;
}

/* 段落 */
#under_blog #content_single .article_content p{
    margin-bottom: 30px;
    line-height: 2;
}
/* 引用 */
#under_blog #content_single .article_content blockquote {
	padding: 5px 0 5px 15px;
	border-left: 5px solid #E4E3DF;
	margin: inherit;
}
/* リンク */
#under_blog #content_single .article_content a:hover{
    text-decoration: underline;
}
#under_blog #content_single .article_content a[target="_blank"]{
    margin-right: 5px;
    padding-right: 15px;
    display: inline-block;
    position: relative;
}
#under_blog #content_single .article_content a[target="_blank"]::after{
    width: calc(12px);
    height: calc(12px);
    content:"";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background: url(../a_images/icon_window.svg);
    background-size: cover;
}
/* リスト li */
#under_blog #content_single .article_content ul{
    padding-left: 0px;
    list-style: none;
}
#under_blog #content_single .article_content ul li{
    padding-left: 20px;
    position: relative;
	line-height: 1.8;
}
#under_blog #content_single .article_content ul > li + li{
    margin-top: 5px;
}
#under_blog #content_single .article_content ul > li::after{
    content:"";
    position: absolute;
    width: 12px;
    height: 12px;
    background-color: var(--color-base);
    left: 0;
    top: calc(0.5em - 1px);
}
/* リスト ol */
#under_blog #content_single .article_content ol{
    padding-left: 0px;
    list-style: none;
    counter-reset: item;
}
#under_blog #content_single .article_content ol > li{
    padding-left: 20px;
    position: relative;
	line-height: 1.8;
}
#under_blog #content_single .article_content ol > li + li{
    margin-top: 5px;
}
#under_blog #content_single .article_content ol > li::after{
    counter-increment: item;
    content: counter(item)'.';
    position: absolute;
    left: 0;
    top: 0;
}
/* 表 */
#under_blog #content_single .article_content table {
	table-layout: fixed;
	border: 1px solid #bcb9b0;
	margin-bottom: 40px;
	width: 100%;
	table-layout: fixed;
}
#under_blog #content_single .article_content table td,
#under_blog #content_single .article_content table th {
	border: 1px solid #E4E3DF;
	font-size: 13px;
	font-size: 1.3rem;
	line-height: 1.6923em;
	letter-spacing: .15em;
	font-weight: 400;
	padding: 5px 10px
}
@media (max-width: 767px) {
	#under_blog #content_single .article_content table td,
	#under_blog #content_single .article_content table th {
		font-size: 11px;
		font-size: 1.1rem;
		line-height: 1.5em;
		padding: 3px 5px
	}
}
#under_blog #content_single .article_content table th {
	color: #3e3a39;
	font-weight: 600;
	background: #f5f5f5;
	text-align: center
}
#under_blog #content_single .article_content table td {
	background: #fff;
}
/* 後続マージン */
#under_blog #content_single .article_content > * + * {
	margin-top: 30px;
}
#under_blog #content_single .article_content > .fukidashi + * {
	margin-top: 0;
}

/*================================   記事   ================================*/
@media all and (max-width: 768px){
    /* カテゴリと日付け */
    #under_blog #content_single .cate_date{
        margin-top: 30px;
    }
    #under_blog #content_single .cate_date .cate.sign_wrap {
        width: 90px;
    }
    #under_blog #content_single .article_content .cate_date .cate.sign_wrap .sign p {
        font-size: 1rem;
    }
    #under_blog #content_single .cate_date .date {
        margin-left: 11px;
        font-size: 1.3rem;
    }

    /* 見出し */
    #under_blog #content_single .article_content h1{
        font-size: 2.2rem;
    }
    #under_blog #content_single .article_content h2{
        margin-bottom: 20px;
        font-size: 1.6rem;
    }
    #under_blog #content_single .article_content h3{
        margin-bottom: 20px;
        font-size: 1.5rem;
    }
    /* 吹き出し */
    #under_blog #content_single .article_content .is-style-fukidashi{
        margin-bottom: 20px;
        font-size: 1.5rem;
    }
    /* 段落 */
    #under_blog #content_single .article_content p{
        margin-bottom: 20px;
    }
}


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

	2.サイドバー

==============================================================================================================================================================
============================================================================================================================================================*/
#sidebar .side_search + section{
    margin-top: 50px;
}
#sidebar section + section{
    margin-top: 50px;
}
/* h2 */
#sidebar h2{
    margin-bottom: 20px;
    padding-bottom: 15px;
    display: flex;
    font-size: 2rem;
	font-family: var(--font-ver1);
    color: var(--color-base);
    text-align: center;
    font-weight: normal;
    align-items: flex-end;
    justify-content: space-between;
    letter-spacing: 0.15em;
    line-height: 1;
    border-bottom: 1px solid var(--color-base);
}
#sidebar h2 span[lang="en"]{
    font-size: 1.5rem;
    color: #bcb9b0;
}
#sidebar ul{
    padding: 0;
    list-style: none;
}
/*================================   検索   ================================*/
.side_search form {
    position: relative;
    border: 1px solid var(--color-base);
    display: flex;
}
.side_search form input {
    margin: 0;
    width: calc(100% - 35px);
    height: auto;
    padding: 10px 15px;
    border: none;
    font-size: 1.2rem;
}
.side_search form button {
    width: 35px;
    font-size: 0;
    border: none;
    background-image: url(../a_images/blog/icon_search.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-color: var(--color-base);
    background-size: 15px;
    cursor: pointer;
    opacity: 1;
    transition: opacity 500ms;
}

/*================================   新着情報   ================================*/
#sidebar .sidebar_new_list li{
    display: flex;
    align-items: center;
}
/* サムネイル */
#sidebar .sidebar_new_list li .thumbnail{
    display: block;
    aspect-ratio: 3 / 2;
    width: 90px;
}
#sidebar .sidebar_new_list li .thumbnail img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
/* タイトル */
#sidebar .sidebar_new_list .title{
	padding-left: 20px;
    width: calc(100% - 90px);
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
	color: var(--color-black);
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	line-height: 1.8;
}
#sidebar .sidebar_new_list li + li{
    margin-top: 20px;
}

/*================================   カテゴリ   ================================*/
#sidebar .sidebar_cate li {
    padding-right: 10px;
    padding-left: 10px;
    padding-bottom: 15px;
    border-bottom: 1px dotted var(--color-base);
}
#sidebar .sidebar_cate_list li + li{
    padding-top: 15px;
}
#sidebar .sidebar_cate_list li a{
    display: flex;
    justify-content: space-between;
    font-size: 1.4rem;
	font-weight: var(--weight-bold);
	color: var(--color-black);
}
#sidebar .sidebar_cate_list li a .count{
    color: #bcb9b0;
	font-weight: normal;
}

/*================================   タグ   ================================*/
#sidebar .sidebar_tag ul{
    margin-top: -10px;
    margin-left: -10px;
}
#sidebar .sidebar_tag ul li{
    margin-top: 10px;
    margin-left: 10px;
    display: inline-block;
}
#sidebar .sidebar_tag ul li a{
    padding: 5px 7px;
    display: block;
    border-radius: 5px;
    background-color: #f5f5f5;
    font-size: 1.3rem;
    color: var(--color-black);
}
#sidebar .sidebar_tag ul li a span{
    color: var(--color-base);
}


/*================================   アーカイブ スマホ   ================================*/
#sidebar .sidebar_archive_list{
	margin-top: -10px;
}
#sidebar .sidebar_archive_list > li{
    margin: 0;
    border-bottom: 1px dotted var(--color-base);
}
#sidebar .sidebar_archive_list > li button{
    width: 100%;
    display: block;
    padding: 10px 40px 10px 0px;
    position: relative;
    text-align: left;
    border: none;
    background: none;
    font-size: 1.4rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
    letter-spacing: 0.15em;
    outline: none;
}
#sidebar .sidebar_archive_list > li button::after{
    content:"";
    width: 10px;
    height: 6px;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    transition: transform 500ms;
    background-color: var(--color-base);
    clip-path: polygon(0 0,100% 0,50% 100%);
}
#sidebar .sidebar_archive_list > li button.on::after{
    transform: translateY(-50%) scale(1, -1);
}
#sidebar .sidebar_archive_list .sidebar_archive_list_month{
    padding-bottom: 5px;
    display: none;
}
#sidebar .sidebar_archive_list .sidebar_archive_list_month li{
    padding-left: 25px;
	position: relative;
}
#sidebar .sidebar_archive_list .sidebar_archive_list_month li::before{
	content:"";
	width: 5px;
	height: 1px;
	position: absolute;
	left: 15px;
	top: 50%;
	transform: translateY(-50%);
	background-color: var(--color-black);
}
#sidebar .sidebar_archive_list .sidebar_archive_list_month li + li{
	margin-top: 10px;
}
#sidebar .sidebar_archive_list .sidebar_archive_list_month a{
    letter-spacing: 0.15em;
    color: var(--color-black);
}


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

	サイドバー スマホ

==============================================================================*/
@media all and (max-width: 768px){
    #under_blog #content_single #sidebar{
        margin-top: 70px;
        float: none;
        width: 100%;
    }
    #sidebar section + section{
        margin-top: 40px;
    }
    /* h2 */
    #sidebar h2{
        padding:  0 20px 20px;
        font-size: 1.8rem;
    }
    #sidebar h2 span:last-child{
        font-size: 1.3rem;
    }
	/*================================   新着情報 スマホ   ================================*/
    /* カテゴリと日付 */
    #sidebar .sidebar_new_list .cate_date{
        margin-top: 10px;
    }
    #sidebar .sidebar_new_list .cate_date > div.date {
        padding-left: 10px;
        width: calc(100% - 80px - 10px);
        text-align: left;
    }

	/*================================   アーカイブ スマホ   ================================*/
    #sidebar .sidebar_archive_list > li a{
        display: inline-block;
    }
}





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

	3.戻るボタン・ページネーション

==============================================================================================================================================================
============================================================================================================================================================*/
#under_blog #content_single  .page_navi{
    margin: 40px auto 0;
}

/*==============================================================================
	記事一覧戻るボタン
==============================================================================*/
#under_blog #content_single .btn_wrap{
    margin-top: 80px;
}
#under_blog #content_single .btn_wrap a{
    width: 100%;
}
#under_blog #content_single .btn_wrap a span{
    font-size: 1.5rem;
}


/*==============================================================================
	前後の記事
==============================================================================*/
#under_blog #content_single .nav_post_list  {
    margin-top: 40px;
    padding: 0px;
    border: none;
    margin-bottom: 0px;
    justify-content: stretch;
    list-style: none;
}
#under_blog #content_single .nav_post_list  li{
    margin: 0;
    font-size: 1.4rem;
}
/* 前と後の記事どちらもある場合 */
#under_blog #content_single .nav_post_list.columns_2{
    display: flex;
}
#under_blog #content_single .nav_post_list.columns_2 .previous,
#under_blog #content_single .nav_post_list.columns_2 .next{
    width: 50%;
    flex-basis: 50%;
}
#under_blog #content_single .nav_post_list.columns_2 a{
    padding: 0;
    display: flex;
    height: 100%;
    align-items: center;
}
#under_blog #content_single .nav_post_list.columns_2 .previous a{
    padding-right: 30px;
    padding-left: 30px;
    justify-content: flex-start;
    text-align: left;
}
#under_blog #content_single .nav_post_list.columns_2 .next a{
    padding-right: 30px;
    padding-left: 30px;
    justify-content: flex-end;
    text-align: left;
}
#under_blog #content_single .nav_post_list.columns_2 .next{
    border-left: 1px solid var(--color-base);
}

/* 前後どちらかがない場合 */
#under_blog #content_single .nav_post_list.columns_1{
    display: block;
}
#under_blog #content_single .nav_post_list.columns_1 a{
    display: inline-block;
}
/* 前の記事しかない場合 */
#under_blog #content_single .nav_post_list.columns_1_prev{
	text-align: left;
}
#under_blog #content_single .nav_post_list.columns_1_prev a{
    padding-left: 30px;
}
/* 次の記事しかない場合 */
#under_blog #content_single .nav_post_list.columns_1_next{
	text-align: right;
}
#under_blog #content_single .nav_post_list.columns_1_next a{
    padding-right: 30px;
    text-align: right;
}
/* 共通 */
#under_blog #content_single .nav_post_list  a{
    font-size: 1.4rem;
    position: relative;
    transition: 500ms;
}
/* 矢印 */
#under_blog #content_single .nav_post_list  a::after{
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    border: 1px solid var(--color-base);
    border-radius: 100%;
    background-size: 7px;
    background-position: center;
    background-repeat: no-repeat;
}
#under_blog #content_single .nav_post_list  .previous a::after{
    left: 0px;
    background-image: url(../a_images/blog/btn_wrap_arrow_left.svg);
}
#under_blog #content_single .nav_post_list  .next a::after{
    right: 0px;
    background-image: url(../a_images/blog/btn_wrap_arrow.svg);
}
/*================================   前後の記事   ================================*/
@media all and (max-width: 768px){
    #under_blog #content_single .nav_post_list  {
        margin-top: 30px;
    }
    /* 前と後の記事がある場合 */
    #under_blog #content_single .nav_post_list.columns_2 .previous a{
        padding-right: 20px;
        padding-left: 30px;
    }
    #under_blog #content_single .nav_post_list.columns_2 .next a{
        padding-right: 30px;
        padding-left: 20px;
    }    
    /* 前の記事しかない場合 */
    #under_blog #content_single .nav_post_list.columns_1_prev a{
        padding-left: 30px;
    }
    /* 次の記事しかない場合 */
    #under_blog #content_single .nav_post_list.columns_1_next a{
        padding-right: 30px;
    }
    
    #under_blog #content_single .nav_post_list a{
        font-size: 12px;
    }
}


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

	4.よく読まれる記事

==============================================================================================================================================================
============================================================================================================================================================*/
#related{
	margin-top: 170px;
}
#related h2{
	margin-bottom: 50px;
	font-family:var(--font-ver1);
	font-size: 2rem;
	font-weight: var(--weight-bold);
	color: var(--color-base);
	text-align: center;
}
#related .related_list_wap{
    margin-left: -40px;
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
}
#related article {
	margin-left: 40px;
    width: 300px;
}
#related article figure .img{
	width: 100%;
	display: block;
    aspect-ratio: 3 / 2;
}
#related article figure .img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
#related article figure figcaption{
	margin-top: 30px;
}
/* カテゴリと日付 */
#related article figure figcaption .article_cate_date{
	margin-top: 30px;
    display: flex;
    align-items: center;
	justify-content: space-between;
}
#related article figure figcaption .article_cate_date .article_cate{
    padding: 6px 10px;
    min-width: 120px;
	max-width: 60%;
    display: block;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    color: #fff;
    background-color: var(--color-base);
    text-align: center;
    font-size: 1.3rem;
    font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#related article figure figcaption .article_cate_date .article_date{
    width: 40%;
    text-align: right;
    font-family: var(--font-en);
    font-size: 1.4rem;
    color: var(--color-base);
}
/* 記事タイトル */
#related article figure figcaption .article_title{
	margin-top: 15px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}
#related article figure figcaption .article_title a{
	color: var(--color-black);
    font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 1.4rem;
}
/* タグ */
#related article figure figcaption .article_tag{
	margin-top: 5px;
    margin-left: -15px;
    display: flex;
    flex-wrap: wrap;
}
#related article figure figcaption .article_tag li {
    margin-top: 10px;
    margin-left: 15px;
    padding-left: 1.1em;
    line-height: 1.2;
    text-indent: -1.1em;
}
#related article figure figcaption .article_tag li a {
    position: relative;
    font-size: 1.1rem;
    color: #4f700f;
    font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
/*==============================================================================

	よく読まれる記事 スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#related{
		margin-top: 80px;
	}
	#related h2{
		margin-bottom: 25px;
	}
	#related .related_list_wap{
		margin-left: -20px;
	}
	#related article{
		margin-left: 20px;
		width: calc(50% - 20px);
	}
	#related article:last-child{
		display: none;
	}
	#related article figure figcaption{
		margin-top: 20px;
	}
	/* カテゴリと日付 */
	#related article figure figcaption .article_cate_date{
		margin-top: 0px;
	}
	#related article figure figcaption .article_cate_date .article_cate{
		padding: 4px 5px;
		min-width: 50%;
		max-width: 50%;
		font-size: 1rem;
        letter-spacing: 0.1em;
	}
	#related article figure figcaption .article_cate_date .article_date{
		font-size: 1rem;
        letter-spacing: 0.1em;
	}
	/* 記事タイトル */
	#related article figure figcaption .article_title{
		margin-top: 10px;
		line-height: 1.2;
	}
	#related article figure figcaption .article_title a{
		font-size: 1.4rem;
	}
	/* タグ */
	#related article figure figcaption .article_tag{
		margin-top: 5px;
		margin-left: -10px;
	}
	#related article figure figcaption .article_tag li {
		margin-top: 5px;
		margin-left: 10px;
	}
	#related article figure figcaption .article_tag li a {
		font-size: 1rem;
	}
}


#under_faq .pankuzu{
	background-color: #fff;
	margin-bottom: 80px;
}
#under_faq .h1 {
    background-color: var(--color-gray);
    background-image: none;
}
#under_faq .h1 span span[lang="ja"] {
    color: var(--color-black);
}
#under_faq .h1::before {
    background: url(../a_images/wave_white.svg) repeat-x top center;
}

/* section */
#under_faq section{
	position: relative;
}

/* h2 */
#under_faq h2{
	text-align: center;
}
#under_faq h2 span{
	padding: 0 15px 15px;
	min-width: 220px;
	position: relative;
	display: inline-block;
	color: var(--color-base);
	font-size: 2.6rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#under_faq h2 span::after{
	content: "";
	width: 100%;
	height: 3px;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	background-color: var(--color-base);
	border-radius: 3px;
}

/* Q&A */
#under_faq .faq_list{
	margin-top: 40px;
}
#under_faq .faq_list dl + dl{
	margin-top: 60px;
}
#under_faq .faq_list dl dt{
	padding-left: 30px;
	position: relative;
	color: var(--color-base);
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 2rem;
}
#under_faq .faq_list dl dt::before{
	content:"Q.";
	position: absolute;
	left: 0;
	top: 0;
	font-family: inherit;
	font-weight: inherit;
}
#under_faq .faq_list dl dd{
	margin-top: 25px;
	padding-left: 30px;
	position: relative;
	line-height: 1.8;
}
#under_faq .faq_list dl dd::before{
	content:"A.";
	position: absolute;
	left: 0;
	top: -0.4em;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 2rem;
}
#under_faq .faq_list + .btn_wrap{
	margin-top: 40px;
}

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

	スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_faq .h1::before {
		background: url(../a_images/sp_wave_white.svg) repeat-x top left calc(50% + 110px);
	}
	/* h2 */
	#under_faq h2 span{
		padding: 0 10px 10px;
		min-width: 180px;
		font-size: 2rem;
	}
	#under_faq h2 span::after{
		content: "";
		width: 100%;
		height: 3px;
		position: absolute;
		left: 50%;
		bottom: 0;
		transform: translateX(-50%);
		background-color: var(--color-base);
		border-radius: 3px;
	}
	/* Q&A */
	#under_faq .faq_list dl + dl{
		margin-top: 50px;
	}
	#under_faq .faq_list dl dt{
		padding-left: 25px;
		font-size: 1.6rem;
	}
	#under_faq .faq_list dl dd{
		margin-top: 20px;
		padding-left: 25px;
	}
	#under_faq .faq_list dl dd::before{
		top: -0.2em;
		font-size: 1.6rem;
	}
	#under_faq .faq_list + .btn_wrap{
		margin-top: 50px;
	}
	#under_faq .faq_list + .btn_wrap a{
		max-width: 240px;
	}
}


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

	1.ページ内リンクボタン

==============================================================================================================================================================
============================================================================================================================================================*/
#under_faq .faq_link_list{
	margin: auto;
	width: 980px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
}
#under_faq .faq_link_list li{
	width: calc( (100% / 3) - 15px);
}
#under_faq .faq_link_list li a{
	padding: 20px;
	width: 100%;
	display: inline-block;
	text-align: center;
	font-size: 1.5rem;
	font-weight: var(--weight-bold);
	border: 1px solid var(--color-base);
	border-radius: 40px;
}
#under_faq .faq_link_list li a span{
	display: inline-block;
	position: relative;
	padding-right: 10px;
}
#under_faq .faq_link_list li a span::before{
	content: "";
	width: 5px;
	height: 13px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	background: url(../a_images/faq/icon_anker.svg);
}
/*==============================================================================

	ページ内リンクボタン スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_faq .faq_link_list{
		margin-top: 0px;
		width: 100%;
		display: block;
	}
	#under_faq .faq_link_list li{
		margin-top: 0px;
		width: 100%;
		text-align: center!important;
	}
	#under_faq .faq_link_list li +li{
		margin-top: 10px;
	}
	#under_faq .faq_link_list li:nth-of-type(odd){
		padding-right: 0px;
	}
	#under_faq .faq_link_list li:nth-of-type(even){
		padding-left: 0px;
	}
	#under_faq .faq_link_list li a{
		padding: 15px;
		max-width: 320px;
		width: 100%;
		font-size: 1.4rem;
	}
}


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

	2.U-BALからだ塾について

==============================================================================================================================================================
============================================================================================================================================================*/
#under_faq #ubal{
	padding-top: 100px;
	padding-bottom: 220px;
}
/*==============================================================================

	ページ内リンクボタン スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_faq #ubal{
		padding-top: 90px;
		padding-bottom: 125px;
	}
}

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

	3.グレー

==============================================================================================================================================================
============================================================================================================================================================*/
#under_faq .gray{
	padding-top: 120px;
	padding-bottom: 240px;
	background-color: var(--color-gray);
}
#under_faq .gray::before {
    content: "";
    width: 100%;
    height: 233px;
    position: absolute;
    background: url(../a_images/wave_gray.svg) repeat-x top center;
    left: 0;
    bottom: 100%;
}
#under_faq .gray .inner{
	position: relative;
}
/*==============================================================================

	グレー スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_faq .gray{
		padding-top: 40px;
		padding-bottom: 110px;
		background-image: url(../a_images/faq/seminar_bg1.svg);
		background-repeat: no-repeat;
		background-position: right -35px top 70px;
		background-size: 255px auto;
	}
	#under_faq .gray::before {
        height: 122px;
        background: url(../a_images/sp_wave_gray.svg) repeat-x top left calc(50% + 110px);
    }
	#under_faq .gray .inner::before,
	#under_faq .gray .inner::after {
		content: none;
	}
}

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

	4.gold

==============================================================================================================================================================
============================================================================================================================================================*/
#under_faq .gold{
	padding-top: 130px;
	padding-bottom: 240px;
	background-color: #f3ebd8;
}
#under_faq .gold::before {
    content: "";
    width: 100%;
    height: 233px;
    position: absolute;
    background: url(../a_images/faq/wave_payment.svg) repeat-x top center;
    left: 0;
    bottom: 100%;
}
#under_faq .gold .inner{
	position: relative;
}
/*==============================================================================

	gold スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_faq .gold{
		padding-top: 50px;
		padding-bottom: 150px;
	}
}

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

	5.セミナー

==============================================================================================================================================================
============================================================================================================================================================*/
#under_faq #seminar .inner::before {
    content: "";
	width: 361px;
	height: 323px;
    position: absolute;
    background: url(../a_images/faq/seminar_bg1.svg) repeat-x top center;
	top: -200px;
    right: -290px;
}
#under_faq #seminar .inner::after {
    content: "";
	width: 137px;
	height: 203px;
    position: absolute;
    background: url(../a_images/faq/seminar_bg2.svg) repeat-x top center;
	bottom: -150px;
    left: -90px;
}
/*==============================================================================

	セミナー スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_faq #seminar{
		background-image: url(../a_images/faq/seminar_bg1.svg);
		background-repeat: no-repeat;
		background-position: right -35px top 70px;
		background-size: 255px auto;
	}
	#under_faq #gray::before {
        height: 122px;
        background: url(../a_images/sp_wave_gray.svg) repeat-x top left calc(50% + 110px);
    }
	#under_faq #gray .inner::before,
	#under_faq #gray .inner::after {
		content: none;
	}
}


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

	6.お支払いについて

==============================================================================================================================================================
============================================================================================================================================================*/
#under_faq #payment .inner::before {
    content: "";
	width: 254px;
	height: 331px;
    position: absolute;
    background: url(../a_images/faq/payment_bg.svg) repeat-x top center;
	top: -160px;
    right: -190px;
}
/*==============================================================================

	お支払いについて スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_faq #payment{
		background-image: url(../a_images/faq/payment_bg.svg);
		background-repeat: no-repeat;
		background-position: left -35px center;
		background-size: 220px auto;
	}
	#under_faq #payment::before {
        height: 122px;
        background: url(../a_images/faq/sp_wave_payment.svg) repeat-x top left calc(50% + 110px);
    }
	#under_faq #payment .inner::before {
		content: none;
	}
}

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

	6.その他

==============================================================================================================================================================
============================================================================================================================================================*/
#under_faq #other{
	padding-bottom: 80px;
	background-image: url(../a_images/faq/seminar_bg1.svg),url(../a_images/faq/seminar_bg1.svg);
	background-repeat: no-repeat;
	background-size: 60px auto,165px auto;
	background-position: top 20px left calc(50% - 570px), bottom -5px left calc(50% + 550px);
}
/*==============================================================================

	その他 スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_faq #other{
		background-image: url(../a_images/faq/seminar_bg1.svg);
		background-size: 165px auto;
		background-position: top 20px right 0px;
	}
}











#under_register .pankuzu,
#under_contact .pankuzu{
	background-color: var(--color-gray);
	padding-bottom: 80px;
}
#under_register .under_layer .h1::before,
#under_contact .under_layer .h1::before {
    background: url(../a_images/wave_gray_line.svg) repeat-x top center;
}
#form_wrap{
	padding-bottom: 150px;
	background-color: var(--color-gray);
}
#form_wrap .inner{
	padding: 0 90px;
}
#form_wrap .hissu{
	color: var(--color-base);
}
/*==============================================================================

	スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#under_register .h1::before,
	#under_contact .h1::before{
		background: url(../a_images/sp_wave_gray_line.svg) repeat-x top left calc(50% + 110px);
	}
	#form_wrap{
		padding-bottom: 100px;
	}
	#form_wrap .inner{
		padding: 0 20px;
	}
}


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

	1.送信ページ & 確認ページ

==============================================================================================================================================================
============================================================================================================================================================*/
#form_wrap.first_step h2{
	text-align: center;
	line-height: 1.8;
	color: var(--color-base);
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	font-size: 3rem;
	letter-spacing: 0.15em;
}
#form_wrap.first_step.first_step h2 + p{
	text-align: center;
}
#form_wrap.first_step .intro{
	text-align: center;
	line-height: 1.8;
}
#form_wrap.middle_step .intro{
	margin-bottom:  60px;
	text-align: center;
	font-size: 2rem;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
	line-height: 1.8;
}
#form_wrap .flex_wrap{
	margin-bottom: -35px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#form_wrap .flex_wrap .flex_child{
	margin-bottom: 35px;
	width: calc(50% - 30px);
}
#form_wrap form {
	margin-top: 45px;
}
#form_wrap form > div + div{
	margin-top: 35px;
}
#form_wrap form .item_name{
	margin-bottom: 15px;
	display: block;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#form_wrap form .item_name .hissu{
	padding-left: 10px;
	display: inline-block;
}
#form_wrap form input:focus,form select:focus,form textarea:focus {
    outline: 1px solid #c4993d !important;
    box-shadow: none;
}
/* input */
#form_wrap form input{
	padding: 15px;
	width: 100%;
	border: 1px solid #bcb9b0;
	letter-spacing: 0.15em;
}
/* select */
#form_wrap .select_wrap{
	position: relative;
    display: block;
}
#form_wrap .select_wrap::after {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(calc(-50% - 2px)) rotate(135deg);
    right: 16px;
    width: 10px;
    height: 10px;
    border-color: #3e3a39;
    border-width: 0;
    border-top-width: 1px;
    border-right-width: 1px;
    border-style: solid;
}
#form_wrap form select{
	padding: 15px;
    padding-right: 35px;
    -webkit-appearance: none;
    appearance: none;
	width: 100%;
	border: 1px solid #bcb9b0;
}
/* textarea */
#form_wrap form textarea{
	padding: 15px;
	width: 100%;
	height: 230px;
	border: 1px solid #bcb9b0;
	letter-spacing: 0.15em;
}
/* radio*/
#form_wrap form .radio_wrap{
	display: flex;
	gap: 0 20px;
}
#form_wrap form .radio_wrap p{
	display: flex;
	align-items: center;
	gap: 0 5px;
}
#form_wrap form .radio_wrap p{
	display: flex;
	align-items: center;
}
#form_wrap form .radio_wrap p label{
	white-space: nowrap;
}
/* checkbox */
#form_wrap .checkbox_wrap{
    padding-left: 50px;
}
#form_wrap form input[type="checkbox"] {
	position: absolute;
	white-space: nowrap;
	width: 1px;
	height: 1px;
	overflow: hidden;
	border: 0;
	padding: 0;
	clip: rect(0 0 0 0);
	clip-path: inset(50%); 
	margin: -1px;
}
#form_wrap form label.check{
    position: relative;
    text-align: left;
	line-height: 1.8;
	cursor: pointer;
}
#form_wrap form label.check::before{
    content: "";
    width: 30px;
    height: 30px;
    display: inline-block;
    position: absolute;
	top: -5px;
    left: -50px;
    border: 2px solid #bcb9b0;
	background-color: #fff;
}
#form_wrap form label em{
	color: var(--color-base);
}
#form_wrap input:checked + label::before{
	background-image: url(../a_images/contact/check.svg);
	background-repeat: no-repeat;
	background-position: center;
}

/* ========== 確認事項 ========== */
#form_wrap .kakunin{
	margin-top: 45px;
	padding-top: 45px;
	padding-bottom: 80px;
    border-top: 1px solid var(--color-base);
    border-bottom: 1px solid var(--color-base);
}
#form_wrap .kakunin > .item_name{
	margin-bottom: 40px;
}
#form_wrap .kakunin > .item_name .note{
	margin-left: 5px;
	font-size: 1.2rem;
	display: inline-block;
	color: var(--color-base);
}
#form_wrap .kakunin > div + div{
	margin-top: 30px;
}
#form_wrap .kakunin ul{
	margin-top: 20px;
}
#form_wrap .kakunin ul li{
	font-size: 1.3rem;
}
#form_wrap .kakunin ul li + li{
	margin-top: 5px;
}

/* ========== 確認画面 ========== */
#form_wrap .form_value{
	line-height: 1.8;
}

/* ========== ボタン ========== */
#form_wrap form .btn_wrap{
	margin-top: 80px;
	text-align: center;
}
#form_wrap form .btn_wrap input[type="reset"],
#form_wrap form .btn_wrap input[type="button"],
#form_wrap form .btn_wrap input[type="submit"]{
	margin: 0 10px;
	padding: 20px 0 22px;
	width: 320px;
	position: relative;
	border: none;
	border-radius: 50px;
	background-color: var(--color-base);
	background-image: url(../a_images/btn_wrap_arrow_white.svg);
	background-repeat: no-repeat;
	background-size: 15px auto;
	background-position:  center right 20px;
	color: #fff;
	font-size: 1.5rem;
	transition: 500ms;
	font-family: var(--font-ver1);
	font-weight: var(--weight-bold);
}
#form_wrap form .btn_wrap input[type="reset"],
#form_wrap form .btn_wrap input[type="button"]{
	background-color: #fff;
	border: 1px solid var(--color-base);
	color: var(--color-base);
	background-image: url(../a_images/btn_wrap_arrow_left.svg);
	background-repeat: no-repeat;
	background-size: 15px auto;
	background-position:  center left 20px;
}
#form_wrap form .btn_wrap input[type="button"]:hover,
#form_wrap form .btn_wrap input[type="submit"]:hover{
	opacity: 0.6;
}

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

	送信ページ & 確認ページ スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#form_wrap .flex_wrap{
		margin-bottom: 0;
	}
	#form_wrap .flex_wrap .flex_child{
		margin-bottom: 0;
		width: calc(100%);
	}
	#form_wrap .flex_wrap .flex_child + .flex_child{
		margin-top: 30px;
	}
	#form_wrap form > div + div{
		margin-top: 30px;
	}
	#form_wrap form .item_name{
		margin-bottom: 15px;
	}
	/* input */
	#form_wrap form input{
		padding: 10px;
	}
	/* textarea */
	#form_wrap form textarea{
		height: 200px;
	}
	/* checkbox */
	#form_wrap .checkbox_wrap{
		padding-left: 35px;
	}
	#form_wrap form label.check::before{
		width: 20px;
		height: 20px;
		top: 50%;
		transform: translateY(-50%);
		left: -35px;
	}
	#form_wrap input:checked + label::before{
		background-size: 12px auto;
	}
	
	/* ========== 確認事項 ========== */
	#form_wrap .kakunin{
		margin-top: 20px;
		padding-top: 20px;
		padding-bottom: 30px;
	}
	#form_wrap .kakunin > .item_name{
		margin-bottom: 20px;
	}
	#form_wrap .kakunin > div + div{
		margin-top: 15px;
	}
	#form_wrap .kakunin ul{
		margin-top: 10px;
	}
	#form_wrap .kakunin ul li{
		font-size: 1.3rem;
	}
	#form_wrap .kakunin ul li + li{
		margin-top: 5px;
	}
	
	/* ========== ボタン ========== */
	#form_wrap form .btn_wrap{
		text-align: center;
	}
	#form_wrap form .btn_wrap input[type="button"],
	#form_wrap form .btn_wrap input[type="submit"]{
		margin: 10px 0px;
		padding: 10px 0 12px;
		line-height: 1.6;
	}

	/* ========== 確認画面 ========== */
	#form_wrap .form_value{
		font-size: 1.3rem;
	}
}



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

	2.thanksページ

==============================================================================================================================================================
============================================================================================================================================================*/
#form_wrap .message_title{
	font-family: var(--font-ver1);
	font-size: 3rem;
	font-weight: var(--weight-bold);
	color: var(--color-base);
	text-align: center;
	letter-spacing: 0.15em;
}
#form_wrap .message_content{
	margin-top: 50px;
	text-align: center;
	font-size: 1.8rem;
}
#form_wrap.last_step .btn_wrap{
	margin-top: 100px;
}
/*==============================================================================

	thanksページ スマホ

==============================================================================*/
@media all and (max-width: 768px){
	#form_wrap .message_title{
		font-size: 1.8rem;
	}
	#form_wrap .message_content{
		margin-top: 25px;
		font-size: 1.5rem;
	}
	#form_wrap.last_step .btn_wrap{
		margin-top: 50px;
	}
	#form_wrap.last_step .btn_wrap a{
		max-width: 320px;
	}
}