@charset "utf-8";
/* CSS Document */

html {
	font-size: 62.5%;
}
body {
	margin: 0;
	padding: 0;	
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	text-align: justify; /* 両端揃え */
    text-justify: inter-ideograph; /* 両端揃えの種類 */
	font-feature-settings: "palt";
}
a {
    text-decoration: none;
    color: #000;
}
a:hover {
	opacity: 0.8;
}
h1, h2, h3, h4, h5, h6, p, li, td {
	margin: 0;
	line-height: 1.8;
}
h1 {
	font-size: 5.0rem;
}
h2 {
	font-size: 4.0rem;
}
h3 {
	font-size: 2.6rem;
}
h4 {
	font-size: 2.2rem;
}
h5 {
	font-size: 1.8rem;
}
h1, h2, h3, h4, h5, th {
	font-weight: 800;
}
p, table, li, form, input, select, a {
	font-size: 1.8rem;
}
.p20 {
	font-size: 2.0rem;
}
small {
	font-size: 1.4rem;
}
figcaption {
    font-size: 1.6rem;
}
img {
	vertical-align: bottom;
}
table {
    border-collapse: collapse;
}
.pc { display: block !important; }
.sp { display: none !important; }

/*ヘッダー*/
header {
	background-image: url("img/all_head_back.png");
	background-position: center;
	background-size: cover;
	position: relative;
}
/*header::before {
	content: "";
	background: #a40000;
	width: 100%;
	height: 14.6rem;
	position: absolute;
}*/
header img {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	position: relative;
}
/*ヘッダーend*/

/*メイン_共通*/
#wrapper img {
	max-width: 100%;	
}
.back_white {
	background: #fff;
}
.back_black {
	background: #000;
}
.back_gray {
	background: #eee;
}
.back_key {
	background: #a40000;
}
.back_key10 {
	background: #fcf4f0;
}
.back_accent {
	background: #002e73;
}
.back_accent10 {
	background: #eaeff9;
}
.contents {
	max-width: 1040px ;
	width: 90%;
	margin: 0 auto;
	padding: 8rem 0;
}
.title {
    text-align: center;
    margin-bottom: 4%;
}
.text_back_key {
	background: #a40000;
	color: #fff;
	padding: 8%;
}
.call {
    position: relative;
}
.call:before {
    position: absolute;
    left: 26%;
    top: 0;
    content: "";
    width: 2px;
    height: 100%;
    background: #000;
    transform: rotate(-30deg);
}     
.call:after {
    position: absolute;
    content: "";
    right: 26%;
    top: 0;
    width: 2px;
    height: 100%;
    background: #000;
    transform: rotate(30deg);
}
.bold {
    font-weight: 800;
}
.mincho {
    font-family: "Noto Serif JP", serif;
	font-weight: 700;
}
.mincho p {
	font-weight: 500;
}
.mincho p.bold {
	font-weight: 700;
}
.line {
    border-bottom: solid 1px #a40000;
}
.line_accent {
    border-bottom: solid 1px #002e73;
}
.line_white {
	border-bottom: solid 1px #fff;
    margin: 1em auto;
}
.underline {
	text-decoration: underline;
}
.marker {
    background:linear-gradient(transparent 60%, #fff33f 50%);
	font-weight: 800;
}
.delete {
	text-decoration: line-through;
}
.big {
	font-size: 120%;
}
.big140 {
	font-size: 140%;
}
.big200 {
	font-size: 200%;
}
.big240 {
	font-size: 240%;
}
.small {
	font-size: 60%;
}
.small80 {
	font-size: 80%;
}
.red {
    color: #e6002d;
	font-weight: 800;
}
.yellow {
	color: #ffff00
}
.white {
	color: #fff;
}
.key {
	color: #a40000;
}
.key_accent {
	color: #002e73;
}
.point {
	color: #e6002d;
}
.clear {
	opacity: 0;
}
.center {
    text-align: center;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.pc_center {
    text-align: center;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.text_end {
	text-align: end;
}
.overflow {
	overflow: hidden;
}
.left {
    float: left;
}
.right {
    float: right;
}
.position_cover {
	position: relative;
}
.position_center {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.position_bottom {
	position: absolute;
	bottom: 0;	
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}
.position_bottom_right {
	position: absolute;
	bottom: 0;
	right: 4%;
}
.position_top_right {
	position: absolute;
	top: 0;
	right: 0;
}
.position_top_left {
	position: absolute;
	top: 0;
	left: 0;
}
.contents.position_cover .position_bottom_right {
	bottom: -8em;
}
.item_center {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.item_top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.item_end {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
.item_between {
	display: flex;
	justify-content: space-between;
}
.right_to_left {
	flex-direction: row-reverse;
}
.around {
	display: flex;
	justify-content: space-around;	
}
.border {
    border: solid 2px #a40000 ;
}
.border4 {
    border: solid 4px #a40000 ;
}
.circle {
	border-radius: 20px;
}
.circle_top {
	border-radius: 18px 18px 0 0;
}
.circle_bottom {
	border-radius: 0 0 18px 18px;
}
.box {
	margin: 0 auto 4% auto;
	padding: 4%;
	border-radius: 8px;
}
.box02 {
	padding: 2%;
	border-radius: 8px;
}
.box03 {
	margin: 0 auto 2% auto;
	padding: 2% 4%;
	border-radius: 8px;	
}
.box.w33 {
	width: 28%;
	padding: 2%;
}
.item_between .box {
	margin: 0 0 4% 0;
}
.shadow_box {
	box-shadow: 2px 2px 0 #a40000;
	border: solid 1px #a40000;
}
ul.point {
	padding: 0;
}
ul.point li {
	list-style: none;
	position: relative;
	padding-left: 1em;
}
ul.point li::before {
	content: "※";
	position: absolute;
	left: 0;
}
ul.check {
	padding: 0;
}
ul.check li {
	list-style: none;
	background: url("img/check_maru.png");
	background-size: 1.4em;
	background-repeat: no-repeat;
	background-position: left 60%;
	padding-left: 2.0em;
}
ul.check li:last-child {
	margin-bottom: 0;
}
.mt80 {display: block; margin-top: 8rem;}
.mt40 {display: block; margin-top: 4rem;}
.mt20 {display: block; margin-top: 2rem;}
.mt10 {display: block; margin-top: 1rem;}
.mb80 {display: block; margin-bottom: 8rem;}
.mb40 {display: block; margin-bottom: 4rem;}
.mb20 {display: block; margin-bottom: 2rem;}
.mb10 {display: block; margin-bottom: 1rem;}
.mr40 {display: block; margin-right: 4rem;}
.mr20 {display: block; margin-right: 2rem;}
.ml40 {display: block; margin-left: 4rem;}
.ml20 {display: block; margin-left: 2rem;}
.w10 {width: 8%;}
.w15 {width: 13%;}
.w20 {width: 18%;}
.w25 {width: 23%;}
.w30 {width: 28%;}
.w33 {width: 31%;}
.w40 {width: 38%;}
.w50 {width: 48%;}
.w60 {width: 58%;}
.w70 {width: 68%;}
.w80 {width: 78%;}
.w85 {width: 83%;}
.w90 {width: 88%;}
.opacity0 {
	opacity: 0;
}
/*メイン_共通end*/
/*ボタン*/
.button {
    display: inline-block;
    width: 60%;
	margin: 0 20%;
    padding: 3% 0;
    text-align: center;
    border-radius: 100px;
    background: #f7ab00;
    color: #fff;
	border: none;
	font-size: 3.0rem;
	font-weight: 800;
	position: relative;
	border-bottom: solid 5px #f39800;
}
.button_place {
	display: inline-block;
    width: 90%;
	margin: 0 5%;
    padding: 2% 0;
    text-align: center;
    background: #fabe00;
    color: #fff;
	font-weight: 800;
	border-radius: 50px;
	position: relative;
	border: solid 3.5px #fabe00;
}
.button_place.little {
	background: #f08300;
	border: solid 3.5px #f08300;
}
.button_place.news {
	border: solid 3.5px #fabe00;
	background: #fff;
	color: #fabe00;
}
.button::after, .button_place::after {
	content: "";
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1.5em;
	width: 0.5em;
	height: 0.5em;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	transform: rotate(45deg);
}
.button_place::after {
	right: 1em;
}
.button_place.news::after {
	border-top: 3px solid #fabe00;
	border-right: 3px solid #fabe00;
	display: none;
}
.button:hover.button::after {
	right: 1.3em;
	transition: 0.2s;
}
.button_place:hover.button_place::after {
	right: 0.8em;
	transition: 0.2s;
}
.button_end {
    display: inline-block;
    width: 60%;
	margin: 0 20%;
    padding: 2% 0;
    text-align: center;
	border-radius: 100px;
    background: #bbbbbb;
    color: #fff;
	font-size: 3.0rem;
	font-weight: 800;
}
.button_place_end {
	display: inline-block;
	width: 90%;
	margin: 0 5%;
    padding: 2% 0;
    text-align: center;
    background: #bbb;
    color: #fff;
	font-weight: 800;
	border-radius: 50px;
	position: relative;
	border: solid 3.5px #bbb;
}
.submit_button {
	padding: 0;
}
input[type="submit"] {
	-webkit-appearance: none;
    width: 100%;
    padding: 3% 0;
    background: none;
    color: #fff;
	border: none;
	font-size: 3.0rem;
	font-weight: 800;
	cursor: pointer;
}
/*ボタンend*/
/*動画*/
.movie {
	position: relative;
	width: 100%;
}
.movie iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
/*動画end*/
/*特典*/
.back_gold {
	background: linear-gradient(90deg, #B98419, #EBE391, #B98419);
}
.tokuten.back_key_gradation {
	background: linear-gradient(90deg, #007b43, #00a95f, #007b43);
}
.tokuten {
	width: 90%;
	margin: 0 auto;
}
.tokuten .title h2 {
	font-size: 6.0rem;
}
.gold01 {
	color: #ffdc5f;
	display: inline-block !important;
	background: linear-gradient(90deg, #956f29, #cbb047, #956f29);
	background: -webkit-linear-gradient(0deg, #956f29, #cbb047, #956f29);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-weight: 800;
}
.text_shadow {
	text-shadow: 0 0 20px #fff, 0 0 10px #fff;
}
.border_line_gold {
	border-bottom: solid 1px #B98419;
	margin-top: 4rem;
    margin-bottom: 4rem;
}
/*講師プロフィール*/
.teacher {
}
.teacher .line {
	border-bottom: solid 1px #000;
}
/*講師プロフィールend*/
/*プログラム*/
.program {
	width: 100%;
	border: solid 1px #b3b3b3;
}
.program th, .program td {
	padding: 2%;
	background: #fff;
}
.program .number, .program .seminar {
	text-align: center;
	font-weight: 800;
	font-size: 2.6rem
}
.program .number {
	width: 11%;
	background: #a40000;
	color: #fff;
}
.program:nth-child(4) .number {
	background: #c92f07;
}
.program:nth-child(6) .number {
	background: #ea5504;
}
.program .seminar {
	width: 28%;
	border-right: solid 1px #b3b3b3;
	padding: 2% 0;
}
.triangle {
	width: 0;
	height: 0;
	border-left: 2rem solid transparent;
	border-right: 2rem solid transparent;
	border-top: 2rem solid #b3b3b3;
	margin: 0 auto 1rem auto;
}
/*プログラムend*/
/*セミナー概要*/
.about table {
	width: 100%;
	border-top: dashed 1px #002e73;
}
.about table tr {
	border-bottom: dashed 1px #002e73;
}
.about table th, .about table td {
	padding: 2% 0;
	border-bottom: dashed 1px #002e73;
}
.about table th {
	width: 24%;
	color: #002e73;
}
/*セミナー概要end*/
/*セミナースケジュール*/
.schedule {
	background: url("img/schedule.png");
	background-position: center;
	background-size: 30%;
}
.area {
	width: 100%;
	background: rgba(255, 255, 255, 1);
	margin-bottom: 0.5%;
	border: solid 1px #002e73;
}
.area.online {
	border: solid 1px #002e73;
}
.area .w72 {
	width: 72%;
}
.area .place {
	width: 19%;
	text-align: center;
	font-size: 2.0rem;
	background: #002e73;
	color: #fff;
}
.area .box {
	width: 80%;
	padding: 2% 0;
	margin: 0;
}
.area .date {
	width: 44%;
	font-weight: 800;
	font-size: 2.0rem;
}
.area .address {
	width: 56%;
	font-weight: 800;
	font-size: 2.0rem;
}
.area .kinds {
	width: 30%;
	background: #eaeff9;
	border-radius: 6px;
	text-align: center;
	color: #002e73;
	font-size: 1.6rem;
	border: solid 3px #fff;
}
.area .kinds_text {
	width: 68%;
	font-size: 1.6rem;
}
.area .entry {
	width: 25%;
	text-align: center;
	padding: 0 1%;
}
.end {
	position: relative;
}
.end::after {
	content: "満員御礼";
	position: absolute;
	top: 50%;
    right: -3%;
	font-size: 2.2rem;
	font-weight: 800;
    color: #e6002d;
	transform: translateY(-50%) rotate(-10deg);
	border: solid 1px #e6002d;
	padding: 1% 1% 0.2% 1%;
	line-height: 1;
	border-radius: 4px;
	text-align: center;
	width: 4em;
}
.re {
	position: relative;
}
.re::after {
	content: "受付再開";
	position: absolute;
	top: 0.6em;
    right: 24%;
	font-size: 2.2rem;
	font-weight: 800;
    color: #fff;
	transform: rotate(-10deg);
	border: solid 1px #e6002d;
	padding: 1% 1% 0.2% 1%;
	line-height: 1;
	border-radius: 4px;
	text-align: center;
	width: 4em;
	background: #e6002d;
}
.full {
	height: 8.4rem;
}
/*セミナースケジュールend*/
/*Q&A*/
.qa .box {
	padding: 2% 4%;
}
.q, .a {
	width: 4.15%;
	padding: 0.5%;
	text-align: center;
	border-radius: 4px;
	color: #fff;
	height: 4%;
}
.q {
	background: #a40000;
}
.a {
	background: #000;
}
.qa_text {
	width: 92%;
	padding-top: 0.5%;
}
/*Q&Aend*/
/*メッセージ*/
.message {
	text-align: center;
	font-size: 2.0rem;
}
/*メッセージend*/

/*フッター*/
footer {
	background: #キーカラー;
	padding: 40px 0 20px 0;
	margin-bottom: -8%;
}
footer #footer_nav {
	padding: 0 0 2% 0;
}
footer #footer_nav ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
footer #footer_nav li {
	display: inline;
	border-left: solid 1px #000;
	padding-left: 2%;
	margin-left: 2%;
}
footer #footer_nav li:last-child {
	border-right: solid 1px #000;
	padding-right: 2%;
}
footer #footer_nav li:first-child {
	margin-left: 0;
}
/*フッターend*/
.page_top a {
    position: fixed;
    bottom: 10px;
    right: 10px;
    display: block;
    text-align: center;
    text-decoration: none;
    background: rgba(247, 171, 0, 0.83);
    color: #fff;
    padding: 0.5em;
    width: 10em;
    border-radius: 5px;
	z-index: 100;
}

@media screen and (min-width: 751px) and (max-width: 1199px) {
	html {
		font-size: 0.83333vw;
	}
    footer {
		padding: 4% 0 2% 0;
	}
}

@media screen and (max-width: 750px) {
	html {
		font-size: 50% ;
	}
	body {
		-webkit-text-size-adjust: 100% ;
	}
	h2 {
		font-size: 3.6rem;
	}
	p, table, li, form, input, select, a, figcaption, h5 {
		font-size: 16px;
	}
	.p20 {
		font-size: 18px;
	}
	small {
		font-size: 14px;
	}
	.pc { display: none !important; }
    .sp { display: block !important; }
    
	
	/*ヘッダー*/
	header {
		background: none;
	}
	header img {
		width: 100%;
	}
	
    /*メイン_共通*/
	.left, .right {
		float: none;
	}
	.w20, .w30, .w33, .w40, .w50, .w60, .w70, .w80, .w85, .w90 {
		width: 100%;
		margin-bottom: 4%;
	}
	img.w30, img.w70, img.w25 {
		width: 60%;
		margin-top: 4rem;
		margin-left: auto;
		margin-right: auto;
		display: block;
		position: static;
	}
	.box.w33 {
		width: 92%;
		padding: 4%;
	}
	.call:before {
		left: 6%;
	}
	.call:after {
		right: 6%;
	}
	.item_center, .item_between, .around, .item_end, .item_top {
		display: block;
	}
	.circle {
		border-radius: 10px;
	}
	.circle_top {
		border-radius: 8px 8px 0 0;
	}
	.circle_bottom {
		border-radius: 0 0 8px 8px;
	}
	.text_back_key {
		padding: 4%;
	}
	.sp_line_height {
		line-height: 1;
		margin-bottom: 4%;
	}
	.sp_item_center {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.sp_big {
		font-size: 120%;
	}
	.pc_center {
		text-align: left;
	}
	.space02 {
		letter-spacing: -0.02em;
	}
	/*ボタン*/
	.button, .button_end {
		width: 100%;
		margin: 0;
	}
	.button::after, .button_place::after {
		right: 1em;
	}
	/*特典*/
	.tokuten {
		width: 100%;
	}
	.tokuten .title h2 {
		font-size: 4.0rem;
	}
	.tokuten img.w15 {
		width: 24%;
		margin: 0 auto 2rem auto;
		display: block;
	}
	.tokuten .w85 {
		text-align: center;
	}
	.tokuten img {		
		width: 80%;
		margin-top: 0rem;
		margin-left: auto;
		margin-right: auto;
		display: block;
		position: static;
	}
	/*セミナー内容*/
	/*プログラム*/
	.program .number, .program .seminar, .program .text {
		display: block;
		width: 96%;
	}
	.program .seminar {
		border-bottom: solid 1px #b3b3b3;
		padding: 2%;
	}
	/*セミナー概要*/
	.about table th, .about table td {
		border-bottom: none;
	}
	.about table th, .about table td {
		display: block;
		width: 100%;
	}
	.about table th {
		padding-bottom: 0;
	}
	/*セミナースケジュール*/
	.area .w72 {
		width: 100%;
	}
	.area .place {
		width: 100%;
	}
	.place .position_center {
		position: relative;
		transform: translate(0, 0);
		-webkit-transform: translate(0, 0);
		-ms-transform: translate(0, 0);
		left: 0;
		font-size: 2.6rem;
	}
	.area .box {
		width: 100%;
	}
	.area .date {
		width: 100%;
		text-align: center;
	}
	.area .address {
		width: 100%;
		text-align: center;
	}
	.area .kinds {
		width: 48%;
		font-size: 14px;
		border: none;
	}
	.area .kinds_text {
		width: 100%;
		font-size: 14px;
		letter-spacing: -0.03em;
	}
	.schedule .text_end {
		text-align: center;
	}
	.area .entry {
		width: 98%;
		margin-top: 2%
	}
	.area {
		padding: 2% 2% 4% 2%;
		width: 96%;
		margin-bottom: 1%;
	}
	.area th {
		font-size: 2.6rem;
	}
	.place::before {
		right: 1em;
		top: 25%;
	}
	.place::after {
		top: 25%;
		right: 1em;
	}
	.place.open::before {
		top: 25%;
		right: 3.5em;
	}
	.end::after, .re::after {
		top: 0.9em;
		left: 1%;
		background: #fff;
	}
	.full {
		height: auto;
	}
	/*Q&A*/
	.qa .box {
		padding: 4%;
	}
	.qa .item_between {
		display: flex;
	}
	.q, .a {
		width: 9%;
	}
	.qa_text {
		width: 85%;
	padding-top: 1%;
	}

    
    /*フッター*/
	footer {
		padding: 4%;
		margin-bottom: 8em;
	}
    footer #footer_nav li {
        display: block;
        margin: 4% auto;
        border-left: none;
    }
    footer #footer_nav li:last-child {
        border-right: none;
    }
	.page_top a {
		bottom: 0;
		right: 0;
		padding: 0.5em 0;
		width: 100%;
	}
}