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


/*　一覧　*/
.seminar_list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));
	gap: 64px 52px; 

}
.seminar_list a {
	color: black;
	text-decoration: none;
}
.seminar_category {
	font-size: 15px;
	line-height: 1.2;
	margin-bottom: 8px;
	color: #666;
}
.seminar_title {
	font-size: 20px;
	line-height: 1.3;
}
.seminar_date_list {
	list-style: none;
	margin: 0;
	padding: 0;
	padding-left: 12px;
	border-left: solid 2px #CCC;
	font-size: 15px;
}

.seminar_wrap h3 {
	font-size: 20px;
	line-height: 140%;
    }




/*  CTAメニュー  */
.main_image {
    aspect-ratio: 120 / 63;
    background-size: cover;
    background-position: center center;
}

.main_wrap {
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
}
.main_wrap_inner {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 36px;
}
@media (min-width: 992px){
.main_wrap_inner {
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: calc(4%);
}
}



dt {
	margin-bottom: 10px;
	font-size: 86%;
        font-family: var(--font-family);
        font-weight: var(--font-weight-bold);
        font-style: normal;
    }

.event_date {
	font-size: 160%;
        font-family: var(--font-family);
        font-weight: var(--font-weight-bold);
        font-style: normal;	line-height: 1.6;
}


/* 相談会等メイン　*/
.main_wrap {
    background-color: rgba(255,255,255,0.8);
    border-radius: 8px;
    padding: 40px 50px;
}
.goto_app_form {
    display: none;
}
@media (max-width: 979px) {
    .main_wrap {
        padding: 20px;
    }
    .goto_app_form {
        display: block;
    }
}


.main_wrap h1 {
	font-size: 28px;
	line-height: 1.2;
	margin-bottom: 0px;
}
.product_list_wrap {
	border-radius: 8px;
}
.product_list_wrap a {
	text-decoration: none;
}

@media screen and (min-width: 640px){
	.product_list_wrap {
		margin-left:   0;
		margin-right:  0;
	}

	.main_grid {
	}
	.main_wrap h1 {
		font-size: 32px;
		margin-bottom: 24px;
	}
}
	



.seminar_date_wrap {
	background: rgba(255,255,255,0.8);
	padding: 16px;
	border-radius: 8px;

}


#seminar_date_list {
    padding: 0;
    margin: 0;
    list-style: none;
}
#seminar_date_list li {
    padding: 0;
    margin: 10px 0;
	font-size: 24px;
        font-family: var(--font-family);
        font-weight: var(--font-weight-bold);
        font-style: normal;}
    


#app_form {
    padding: 50px;
    border-radius: 10px;
    background-color: rgba(92, 187, 191, 0.05);
	scroll-margin-top: 80px;
}
@media screen and (max-width:639px) {
#app_form {
    padding: 16px;
}
}
.product_list_wrap {
    min-height: 300px;
    max-height: 600px;
    overflow: auto;
    padding: 15px;
    border-top: solid 1px #DDD;
    border-bottom: solid 1px #DDD;
    background-color: rgba(31,31,31,0.05);
}


.time_range {
    list-style: none;
    
    margin: 0;
    padding: 0;
}
#seminar_date_list li {
    padding: 0;
    margin: 0px 0 24px;
    font-size: 32px;
    font-family: Helvetica;
    font-weight:bold;
    font-style: normal;
    padding-bottom: 4px;
    border-bottom: solid 3px #78C6E6;
	line-height: 1.1;
}
#seminar_date_list li span {
    font-size: 60%;
    font-feature-settings: "palt" on;
}
.schedule_can_adjusted {
    font-family: var(--font-family);
    font-weight: var(--font-weight-bold);
    font-style: normal;
    font-size: 120%;
}
.schedule_can_adjusted span {
    font-weight: var(--font-weight-light);
    font-size: 15px;;
}


.time_range li {
    font-family: var(--font-family);
    font-weight: var(--font-weight-bold);
    font-style: normal;
    font-size: 110%;
}


.time_range li::before {
    margin-left: 1.5rem;
}
.time_range li::before {
    content: "⚫︎";
    display: inline-block;
    margin-right: 5px;
    color: #999;
    padding: 0;
    margin-left: 0;
}
.mktoForm .mktoButtonWrap.mktoSimple .mktoButton, .mktoForm .mktoButtonWrap.mktoNative .mktoButton {
    font-size: 18px !important;
    padding: 25px 40px !important;
    color: #FFFFFF !important
}  



/* 設定画面横幅 */
.acms-admin-modal-dialog.large {
	--acms-admin-modal-width: 1400px;
}






/* エントリー */

.seminar_catch {
	color: #888;
	border-left: solid 4px #7C7670;

	font-size: 14px;
	margin-bottom: 6px;
	padding-left: 10px;
	font-weight: 400;
}
@media screen and (min-width: 576px){
	.seminar_catch {
		font-size: 17px;
		margin-bottom: 8px;
		padding-left: 12px;
	}
}
	
.flatpickr-current-month {
	font-size: 13px !important;
}
	
@media screen and (max-width: 639px) {

	.schedule_list {
		display: grid;
		grid-template-columns: 24px  auto;
		grid-template-rows: repeat(2, 1fr);
		grid-column-gap: 0px;
		grid-row-gap: 0px;
		align-items: center;
	}
	.schedule_list > div:nth-of-type(1) { grid-area: 1 / 1 / 2 / 3; }
	.schedule_list > div:nth-of-type(2)  { grid-area: 2 / 1 / 3 / 2; }
	.schedule_list > div:nth-of-type(3) { grid-area: 2 / 2 / 3 / 3; }
	
}
	
	
	
@media screen and (min-width: 640px) {
	.schedule_list {
		display: grid;
		grid-template-columns: 200px 40px  auto;
		column-gap: 8px;
		border-bottom: solid 1px #DDD;
		padding: 8px 0;
		align-items: center;
	}
}

.sub_menu_wrap {
	display: block;
}

@media screen and (min-width: 992px) {
	.sub_menu_wrap {
		display: grid;
		gap: 24px calc(5%);
		grid-template-columns: 30% 65%;
	}
}
@media screen and (min-width: 1200px) {
	.sub_menu_wrap {
	}
}
	
	
	.schedule_list .open_check {
		text-align: center;
	}
	.schedule_list_wrap {
		border: solid 1px #EEE;
		background-color: #FFF;
		padding: 16px;
		border-radius: 6px;
		box-shadow: rgba(0,0,0,0.3) 0 1px 1px 0, rgba(0,0,0,0.08) 0 2px 3px 3px;
		font-weight: 600;
	}
	.schedule_list_wrap_inner {
		border-top: solid 1px #DDD;
	}
	.schedule_list_wrap .seminer_date {
		display: none
	}
	.seminer_date_show {
		display: inline-block !important;
	}
	.schedule_list_wrap .full {
		font-size: 12px;
		padding: 4px;
		display: inline-block;
		line-height: 1;
		background-color: #DDDDDD;
		border-radius: 6px;
		color: #000;
		font-weight: 100;
	}
	.schedule_list_wrap label {
		margin: 0;
	}
	.schedule_list_wrap input[type="radio"] {
		margin: 0;
	}
	.section_border {
		margin: 56px 0;
		display: block;
		height: 1px;
		background-color: #676767;
	}
	#app_form_top {
		scroll-margin-top: 80px;
		padding: 0;
	}
	@media screen and (min-width: 640px) {
		#app_form_top {
			padding: 16px;
		}
	}
	
	body.event .event a {
		background-color: #FFF;
		color: #000 !important;
		border-top: #222 1px solid;
	}
	body.event .event a:hover {
		background-color: #FFF !important;
		color: #000 !important;
		border-top: #222 1px solid;
	}
	#NumberPersons {
		max-width: 160px;
	}
	.solution .mainTitle {
		padding-bottom: 0;
		font-weight: 400;
	}