@charset "UTF-8";
/*
Theme Name: サンプル
Author: 株式会社メックコミュニケーションズ
Author URI: https://www.mec-com.co.jp
Date: 2024-02
*/

/*parts
-----------------------------------------------------------------------------------------*/
body{
/*特色*/
	--color_A:#28A078;/*メインカラー*/
	--color_Ad:#00825F;/*メインカラー濃*/
	--color_Ap:#B1DDCE;/*メインカラー薄*/
	--color_B:#8CC63F;/*差し色（黄緑）*/
	--color_Bp:#E5F3CE;/*差し色（黄緑薄）*/
	--color_C:#29ABE2;/*差し色（水色）*/
	--color_D:#F7931E;/*差し色（橙色）*/
	--color_base:#F0EFEB;/*ベースカラー（灰色）*/
	--color_red:#FF0000;/*赤*/
	--color_kon:#073287;/*紺色*/
/*em*/
	--color_notice:var(--color_red);
/*テキストリンク*/
	--color_link:#005AAA;
/*-------------------------base*/
/*text*/
	--tx_sen:var(--color_A);
	--tx_waku:var(--color_A);
	--tx_kiji:var(--color_A);
	--tx_belt:var(--color_A);
	--tx_line:var(--color_A);
	--tx_bar:var(--color_A);
	--tx_maru:var(--color_base);
/*ya*/
	--ya_tri:var(--color_A);
	--ya_sen:var(--color_A);
	--ya_maru:var(--color_A);
/*btn*/
	--btn:var(--color_A);
/*list*/
	--list_line:#000;
	--list_box:#FFF;
	--list_mark:var(--color_red);
/*sitemap*/
	--sitemap:var(--color_A);
	--sitemap_ya:var(--color_A);
/*parts*/
	--flow_no:var(--color_A);
	--dtbox_tx:#FFF;
	--dtbox_bg:var(--color_A);
	--tab_btn:var(--color_A);
/*etc*/
	--sya:var(--color_A);
}
/*header-height / nav_height*/
@media print, screen and (min-width:1025px) {
	body{--hh:90px;}
	body{--navh:55px;}
}
@media screen and (max-width:1024px) {
	body{--hh:70px;}
	body{--navh:55px;}
}
/*-------------------------------------------------------------------------------------------------特色border_color*/
body .sen_A{border-color:var(--color_A);}
body .sen_B{border-color:var(--color_B);}
body .sen_C{border-color:var(--color_C);}
body .sen_D{border-color:var(--color_D);}
body .sen_red{border-color:var(--color_red);}
body .sen_kon{border-color:var(--color_kon);}
/*-------------------------------------------------------------------------------------------------特色bg*/
body .bg_A{background-color:var(--color_A);}
body .bg_Ad{background-color:var(--color_Ad);}
body .bg_Ap{background-color:var(--color_Ap);}
body .bg_B{background-color:var(--color_B);}
body .bg_C{background-color:var(--color_C);}
body .bg_D{background-color:var(--color_D);}
body .bg_base{background-color:var(--color_base);}
body .bg_red{background-color:var(--color_red);}
body .bg_kon{background-color:var(--color_kon);}
/*-------------------------------------------------------------------------------------------------特色text_color*/
body .tx_A{color:var(--color_Ad);}
body .tx_B{color:var(--color_B);}
body .tx_C{color:var(--color_C);}
body .tx_D{color:var(--color_D);}
body .tx_red{color:var(--color_red);}
body .tx_kon{color:var(--color_kon);}
/*-------------------------------------------------------------------------------------------------特色ya*/
body .ya_A::before{border-color:var(--color_A);background-color:var(--color_A);}
body .ya_B::before{border-color:var(--color_B);background-color:var(--color_B);}
body .ya_C::before{border-color:var(--color_C);background-color:var(--color_C);}
body .ya_D::before{border-color:var(--color_D);background-color:var(--color_D);}
body .ya_red::before{border-color:var(--color_red);background-color:var(--color_red);}
body .ya_kon::before{border-color:var(--color_kon);background-color:var(--color_kon);}
/*-------------------------------------------------------------------------------------------------utility*/
.mt6{margin-top:6px;}
.waku{padding:0.8em 1.2em;border: 1px solid #CCC;margin:1em 0;}
/*-------------------------------------------------------------------------------------------------title*/
/*-------------------------title1*/
.title1{
	font-size:4.5rem;
	line-height:1.5;
	font-weight:bold;
	position:relative;
	letter-spacing:0.1em;
}
@media screen and (max-width: 767px) {.title1{font-size:2.6rem;}}
/*-------------------------title2*/
.title2{
	font-size:2.8rem;
	line-height:1.5;
	font-weight:bold;
	position:relative;
}
@media screen and (max-width: 767px) {.title2{font-size:2.2rem;}}
/*-------------------------title3*/
.title3{
	font-size:2.4rem;
	line-height:1.5;
	font-weight:bold;
	position:relative;
}
@media screen and (max-width: 767px) {.title3{font-size:2rem;}}
/*-------------------------title4*/
.title4{
	font-size:2rem;
	font-weight:bold;
	color:var(--color_Ad);
	margin-bottom:0.2em;
}
@media screen and (max-width: 767px) {.title4{font-size:1.8rem;}}
/*-------------------------btn*/
.btn{
	justify-content:center;
}
/*-------------------------dtbox*/
.dtbox dt{
	border-radius:5px;
}
/*-------------------------hv_line*/
.hv_line:hover{
	text-decoration:underline;
}
/*-------------------------ol*/
ol li{
	font-size:inherit;
	list-style-type:decimal;
	margin-left:1.5em;
	line-height:1.66;
}
ol > li + li{margin-top:0.5em;}
/*-------------------------table*/
table th{
	background:#F4F4F2;
	line-height:1.66;
	text-align:center;
}
table td{
	line-height:1.66;
}
@media print, screen and (min-width: 768px) {
	table th{white-space: nowrap;}
}
/*-------------------------linkfile（親要素）/ list_title（aタグの中の要素）*/
.linkfile_b a::before,
.linkfile_a a::after,
a .list_title::after{
	width:0.9em;
	height:0.9em;
	display:inline-block;
	vertical-align:middle;
	margin:-0.2em 0.2em 0 0.2em;
	background-size:cover !important;
}
.linkfile_b a[target]:before,
.linkfile_a a[target]:after,
a[target] .list_title:after{
	content:"";
	background:url(images/icon_blank.svg);
}
.linkfile_b a[href$='.pdf']::before,
.linkfile_a a[href$='.pdf']::after,
a[href$='.pdf'] .list_title::after{
	content:"";
	background:url(images/icon_pdf.svg);
}
.linkfile_b a[href$='.xls']::before,
.linkfile_b a[href$='.xlsx']::before,
.linkfile_a a[href$='.xls']::after,
.linkfile_a a[href$='.xlsx']::after,
a[href$='.xls'] .list_title::after,
a[href$='.xlsx'] .list_title::after{
	content:"";
	background:url(images/icon_excel.svg);
}
.linkfile_b a[href$='.docx']::before,
.linkfile_b a[href$='.doc']::before,
.linkfile_a a[href$='.docx']::after,
.linkfile_a a[href$='.doc']::after,
a[href$='.docx'] .list_title::after,
a[href$='.doc'] .list_title::after{
	content:"";
	background:url(images/icon_word.svg);
}
.linkfile_b a[href$='.pptx']::before,
.linkfile_b a[href$='.ppt']::before,
.linkfile_a a[href$='.pptx']::after,
.linkfile_a a[href$='.ppt']::after,
a[href$='.pptx'] .list_title::after,
a[href$='.ppt'] .list_title::after{
	content:"";
	background:url(images/icon_ppt.svg);
}
.linkfile_b a[href$='.zip']::before,
.linkfile_b a[href$='.zip']::before,
.linkfile_a a[href$='.zip']::after,
.linkfile_a a[href$='.zip']::after,
a[href$='.zip'] .list_title::after,
a[href$='.zip'] .list_title::after{
	content:"";
	background:url(images/icon_zip.svg);
}

.linkfile_b .noicon:before,
.linkfile_a .noicon:after,
.linkfile_b .noicon a[target]:before,
.linkfile_a .noicon a[target]:after{
	display:none;
}
/*-------------------------acc_ya*/
.acc_ya{
	padding-right:2em;
	position:relative;
}
.acc_ya::after{
	position:absolute;
	right:0.25em;
	top:calc(50% - 0.5em);
	content:"";
	display:block;
	width:1em;
	height:1em;
	background:url(images/ya_maru_w.svg);
	background-size:1em;
	transform:rotate(90deg);
}
.acc_ya:hover,
.open.acc_ya{
	filter: hue-rotate(20deg);
}
.open.acc_ya::after{
	transform:rotate(-90deg);
}
/*-------------------------dot_no*/
.main ul.dot_no li{
	margin-left:0;
	list-style-type:none;
}
/*-------------------------linebox*/
.linebox p{
	text-align:center;
	line-height:3;
	background:#F1F1F1;
}
.linebox ul{
	padding:12px;
}
.linebox ul li{
	padding:8px;
	width:calc(100% / 3) ;
	float:left;
}
@media screen and (max-width: 540px) {
	.linebox ul li{padding:0 5px;width:50%;}
	.linebox ul li:last-child{margin-top:10px;}
}
/*-------------------------tx_maru_itemlist*/
.tx_maru_itemlist li{
	padding:0.3em 1em;
	background:#A4935D;
	color:#FFF;
	border-radius: 5px;
}
/*-------------------------stafflist*/
.stafflist li{
	border:1px solid #CCC;
	padding:20px;
	color:#000;
}
.stafflist li span{
	display:block;
	text-align:center;
}
.stafflist li span.photo{
	margin:-20px;
	margin-bottom:15px;
}
.stafflist li span.post{
	font-size:70%;
}
.stafflist li span.name{
	font-size:180%;
	line-height:1.2;
}
.stafflist li span.ruby{
	font-size:60%;
	letter-spacing:2px;
	font-weight:bold;
}
.stafflist li span.sikaku{
	font-size:80%;
	color:#B02923;
	margin:5px 0;
}
.stafflist li span.copy{
	font-size:90%;
	text-align:justify;
}

.stafflist li span.spec{
	font-size:90%;
	text-align:justify;
	color:#208262
}

/*-------------------------tx_line*/
.tx_line{
	font-weight:bold;
	border-bottom:2px solid #93CFBB;
	padding-bottom:0.2em;
	margin-bottom:0.2em;
}
/*-------------------------youtube*/
.youtube iframe{
	width:100%;
	aspect-ratio:16 / 9;
}
/*-------------------------流れ*/
dl.nagare dt{
	padding:15px 0 0 0;
	font-size:120%;
	line-height:1.4;
	font-weight:bold;
	color:#006450;
	margin-top:0;
	background:url(images/nagare.svg) left 10px top no-repeat;
}
dl.nagare dt em{
	width:40px;
	margin-right:10px;
	font-size:25px;
	line-height:40px;
	font-weight:bold;
	color:#FFF;
	background:#28A078;
	text-align:center;
	display:block;
	float:left;
	border-radius: 3px;	
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}
dl.nagare dd{
	padding:0px 0px 10px 27px;
	margin-left:17px;
	border-left:6px solid #D4ECE4;
}
dl.nagare dt:first-child{
	background:none;
	padding-top:10px;
}
dl.nagare dd:last-child{
	border-left:none;
	margin-left:23px;
}
/*-------------------------ddfile*/
dl.ddfile dt{
	margin-bottom:0.3em;
}
dl.ddfile dd{
	padding:0em;
}
/*-------------------------titleimg*/
.titleimg{
	width:200px;
	height:125px;
	margin:0px auto;
	display:flex;
	justify-content:center;
	align-items:center;
}
.titleimg img{
	max-height:100%;
}
/*-------------------------topicsbox*/
.topicsbox{
	background:var(--color_base);
}
@media print, screen and (min-width: 768px) {
	.topicsbox{padding:10px;border-radius:20px;margin-top:30px;}
}
@media screen and (max-width: 767px) {
	.topicsbox{padding:10px 0;margin:30px -20px 0 -20px;}
}


/*hgroup
-----------------------------------------------------------------------------------------*/
hgroup {
	margin-bottom:3.5em;
}
hgroup h1.news::before,
hgroup h1.event::before{
	display:flex;
	align-items:center;
	justify-content:center;
	width:6em;
	height:1.5em;
	font-weight:bold;
	border-radius:5px;
	font-size:60%;
	margin-bottom:0.2em;
}
hgroup h1.news::before{
	content:"NEWS";
	color:#29ABE2;
	background:#D7EFFA;
}
hgroup h1.event::before{
	content:"EVENT";
	color:#F7931E;
	background:#FEEABE;
}
hgroup h2 {
	line-height:1.75;
}
hgroup em{
	font-weight: bold;
}


/*topics_list
-----------------------------------------------------------------------------------------*/
.topics_list{
	display:flex;
	flex-direction:column;
	gap:10px;
}
.topics_list li{
	position:relative;
}
.topics_list li > a::after{
	display:none;
}
.topics_list li > a{
	display:flex;
	line-height:1.33;
	min-height:110px;
	flex-direction:column;
	gap:5px;
	padding:15px 25px 15px 110px;
	border-radius:10px;
	background:#FFF url(images/ya_c.svg) right 10px center no-repeat;
	position:relative;
	text-decoration:none;
	color:#000;
}
.topics_list li > a::before{
	content:"";
	display:flex;
	align-items:center;
	justify-content:center;
	width:80px;
	height:80px;
	position:absolute;
	top:15px;
	left:15px;
	background:#E6E6E6;
	color:#666;
	font-weight:bold;
	border-radius:5px;
	margin:0;
}
.topics_list li.news > a::before{
	content:"NEWS";
	color:#29ABE2;
	background:#D7EFFA;
}
.topics_list li.event > a::before{
	content:"EVENT";
	color:#F7931E;
	background:#FEEABE;
}

.topics_list li.pickup > a{
	background:#fff3ee;
	border:2px solid #d20000;
}

.topics_list li.pickup > a:hover{
	border:0px;
}


.topics_list li.pickup > a::before{
	content:"PICKUP";
	color:#d20000;
	background:#ffc6c6;
}

.topics_list span{
	font-weight:normal;
	font-size:75%;
}
.topics_list .list_title{
	font-size:133.3%;
	font-weight:bold;
}
.topics_list .list_info{
	font-size:90%;
	color:var(--color_Ad);
}
.topics_list .list_date{
	font-size:1.3rem;
	line-height:1.75;
	order:-1;
	color:#666666;
}
@media print, screen and (min-width: 768px) {
	.topics_list li > a:hover{outline:2px solid var(--color_A);background-position:right 5px center;}
}
@media screen and (max-width: 767px) {
	.topics_list{gap:3px;}
	.topics_list li > a{min-height:70px;gap:5px;padding:10px 10px 10px 70px;border-radius:0;background:#FFF;}
	.topics_list li > a::before{width:50px;height:50px;top:10px;left:10px;font-size:11px;}
	.topics_list .list_date{font-size:1.1rem;text-align:right;order:0;}
}

/*index_nav
-----------------------------------------------------------------------------------------*/
.index_nav ul{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:2px;
}
.index_nav li{
	flex:1 0 auto;
}
.index_nav li a{
	line-height:1.3;
	font-weight:bold;
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	background:#FFF;
	height:var(--hh);
	position:relative;
}
.index_nav li a span{
	font-size:66%;
}
.index_nav li a.current,
.index_nav a:hover{
	color:var(--color_Ad);
}

/*search_all
-----------------------------------------------------------------------------------------*/
.search_all{
	height:var(--navh);
	border:none;
	background:#FFF;
	border-radius:8px;
	overflow:hidden;
	max-width:600px;
	margin:0 auto;
}
.search_all input[type="text"]{
	height:100%;
	width:calc(100% - var(--navh));
	border:none;
	float:left;
	text-indent:10px;
}
.search_all [type="text"]:focus {
	outline: 0;
}
.search_all ::placeholder {
	font-weight:bold;
}
.search_all [type="text"]:focus::placeholder {
	opacity:0;
}
.search_all input[type="submit"]{
	width:var(--navh);
	height:100%;
	border:none;
	background:url(images/search.svg) center center no-repeat;
}
.search_all input[type="submit"]:hover{
	cursor:pointer;
	background-color:var(--color_Bp);
}

/*mokuteki_nav
-----------------------------------------------------------------------------------------*/
.mokuteki_nav dl{
	display:inline-flex;
	align-items:center;
	flex-wrap:wrap;
	gap:8px 5px;
	font-size:1.8rem;
}
.mokuteki_nav dt{
	width:100%;
	text-align:left;
	color:#FFF;
	font-weight:bold;
	padding:0 0.6em 0 1.8em;
	background:url(images/search_w.svg) left no-repeat;
	background-size:1.33em;
}
.mokuteki_nav dd:nth-child(-n+4){/*修正*/
	flex:1 0 auto;
}
.mokuteki_nav dd a{
	display:block;
	text-align:center;
	background:rgba(255,255,255,0.7);
	color:var(--color_Ad);
	font-weight:bold;
	padding:0.5em 1em;
	border-radius:100em;
}
.mokuteki_nav dd a:hover{
	background:#FFF;
}
@media screen and (max-width: 460px) {
	.mokuteki_nav dd a{font-size:1.5rem;padding:0.6em 0.8em;}
}


/*jigyolist
-----------------------------------------------------------------------------------------*/
.jigyolist h2{
	font-size:2.5rem;
	line-height:1.5;
	font-weight:bold;
	text-align:center;
	margin-top:3em;
}
@media screen and (max-width: 767px) {#jigyolist h2{font-size:2rem;}}
.jigyolist h3{
	font-weight:bold;
	margin:1em 0 0.3em 0;
	padding-top:1.2em;
	font-size:2rem;
	border-top:1px dashed #CCC;
}
.jigyolist h3 a::before{
	width:1em;
	height:1em;
	border:none;
	background:var(--color_link) url(images/ya_w.svg);
	background-size:100%;
	border-radius:100%;
	content:"";
	display:inline-block;
	margin-right:0.2em;
	flex-shrink:0;
	vertical-align:-10%;
	transition: all 0.2s;
}
.jigyolist h3 a:hover::before{
	transform: translateX(0.2em);
}
.jigyolist p.busyo{
	font-weight:bold;
	color:var(--color_Ad);
	text-align:right;
}
.jigyolist table {
	margin:0.5em 0;
}


/*home
-----------------------------------------------------------------------------------------*/
/*-------------------------mainimg*/
.mainimg{
	position:relative;
	z-index:1;
	padding-bottom:2px;
}
.mainimg a:hover{
	filter:brightness(75%);
}
.mainimg button{
	border:none;
	text-indent:-9999em;
	cursor:pointer;
	border-radius:100em;
	opacity:0.6;
}
.slick-active button,
.mainimg button:hover{
	opacity:1;
}
.slick-arrow{
	position:absolute;
	right:10px;
	top:calc(50% - 20px);
	background:#FFF url(images/ya_k.svg) center no-repeat;
	background-size:60%;
	box-shadow: 0 0 5px #000;
	width:40px;
	aspect-ratio:1 / 1;
	z-index:10;
}
.slick-prev{
	right:auto;
	left:10px;
	transform: rotate( 180deg );
}
.slick-dots{
	position:absolute;
	padding:5px;
	width:100%;
	display:flex;
	justify-content:center;
	gap:10px;
}
.slick-dots button{
	width:10px;
	height:10px;
	background:#CCC;
}
.slick-active button{
	background:#FFFF00;
}
@media print, screen and (min-width: 768px) {
	.mainimg{padding-bottom:15px;}
	.mainimg img{width:700px;border-radius:1vw;}
	.slick-slide{margin:0 10px;}
}
/*-------------------------hometop*/
.hometop{
	padding:25px 0 0 0;
	background: linear-gradient(180deg, transparent 50%, var(--color_A) 50%, var(--color_A) 100%);
}
@media screen and (max-width: 767px) {
	.hometop{padding-top:0;background: var(--color_A);}
}
/*index_nav*/
.hometop .index_nav li{
	width:24%;
}
.hometop .index_nav li:nth-child(2){
	width:49%;
}
.hometop .index_nav li a{
	height:55px;
}
.hometop .index_nav li a{
	background: linear-gradient(180deg, #FFF 30%, #DFE7CF 100%);
}
.hometop .index_nav li a::after{
	content:"";
	height: calc(24px / 2);
	width: 12px;
	clip-path: polygon(100% 0, 100% 100%, 0 100%);
	background:var(--color_A);
	opacity:40%;
	position:absolute;
	right:0px;
	bottom:0px;
	mix-blend-mode:multiply;
	transition: all 0.2s;
}
.hometop .index_nav li a:hover::after{
	clip-path:none;
	height:100%;
	width:100%;
	opacity:15%;
}
/*mokuteki_nav*/
.hometop .mokuteki_nav{
	padding:20px 15px;
}
.hometop .mokuteki_nav dt{
	width:auto;
}
@media screen and (max-width: 1230px) and (min-width: 768px) {/*修正*/
	.hometop .mokuteki_nav dl{max-width:800px;}
	.hometop .mokuteki_nav dd{flex:1 0 auto;}
}
/*-------------------------sdgs_block*/
.sdgs_block{
	background:#4096D3;
	color:#FFF;
	padding:40px 0;
}
.sdgs_block p{
	max-width:800px;
}
@media print, screen and (min-width: 1150px) {
	.sdgs_block h2{width:35%;padding:10px 0;}
	.sdgs_block p{width:65%;}
}
@media screen and (max-width: 767px) {
	.sdgs_block{padding:20px 0;}
}

/*search
-----------------------------------------------------------------------------------------*/
/*-------------------------search_top*/
.main .search_top{
	font-size:150%;
	font-weight:bold;
	background:var(--color_A);
	color:#FFF;
	padding:20px 10px;
	text-align:center;
	margin-bottom:30px;
}
.search_top .search_all{
	max-width:600px;
}
@media print, screen and (min-width: 768px) {
	.search_top{margin:-50px;margin-bottom:-30px;border-top-right-radius:20px;border-top-left-radius:20px;}
}
@media screen and (max-width: 767px) {
	.search_top{margin:-30px -20px;}
}
/*-------------------------search_list*/
.search_list li{
	padding-left:1.2em;
	text-indent:-1.2em;
	margin:0.75em 0;
}


/*yorozu
-----------------------------------------------------------------------------------------*/
.yorozu em{
	color:#C1272D;
}
.yorozu .sen_red{
	border-color:#C1272D;
}
/*-------------------------yorozu_main*/
@media screen and (max-width: 767px) {
	.yorozu_main{margin:-30px -20px 0 -20px;}
}
/*-------------------------satellite*/
.yorozu #satellite h4{
	margin-top:30px;
	color:#000;
	font-weight:bold;
}
.yorozu #satellite section.area{
	padding:15px;
}
.yorozu #satellite h5{
	background:#A4935D;
	color:#FFF;
	line-height:2;
	padding:0 15px;
	margin:0 -15px;
	font-weight:bold;
}
.yorozu #satellite h6{
	margin-top:15px;
}
.yorozu #satellite li{
	width:20%;
	border:1px solid #FFF;
	float:left;
	text-align:center;
	line-height:1.33;
}
/*-------------------------サテライト担当表の背景　更新（毎月）*/
.yorozu #satellite li:nth-child(4){
	background:#FFFEDF;
}
.yorozu #satellite li > span:first-child{
	display:block;
	background:#E6E6E6;
	border:1px solid #AAA;
	padding:3px 0;
}
.yorozu #satellite li strong{
	display:block;
	border:1px solid #AAA;
	padding:10px 0 8px 0;
	margin-top:-1px;
	font-size:115%;
}
.yorozu #satellite li strong + strong{
	border-top:1px dotted #FFF;
}
.yorozu #satellite li strong span{
	display:block;
	margin-top:3px;
	font-size:75%;
}
.yorozu #satellite li strong span.mitei{
	color:#FF9966;
}
@media screen and (max-width: 600px) {
	.yorozu #satellite .yoyaku p span,
	.yorozu #satellite .yoyaku p strong{display:block;margin:0;}
	.yorozu #satellite section.area{padding:15px 0;}
	.yorozu #satellite h5{margin:0;}
}

/*-------------------------seminar*/
.yorozu #seminar h4{
	font-size:110%;
	font-weight:bold;
	color:#FFF;
	padding: 0.5em 0.5em;/*上下 左右の余白*/
	background: #28A078;/*背景色*/
	border-left: solid 5px #006400;/*左線*/
	margin-top:2em;
}
.yorozu section#seminar h4.picup{
  background: #dc143c;/*背景色*/
  border-left: solid 5px #8b0000;/*左線*/
}
.yorozu section#seminar h4.picupmini{
  background: #EB7300;/*背景色*/
  border-left: solid 5px #B24200;/*左線*/
}
.yorozu section#seminar h4.start{
  background: #9acd32;/*背景色*/
  border-left: solid 5px #006400;/*左線*/
}
.yorozu section#seminar h4.point{
  background: #FA8072;/*背景色*/
  border-left: solid 5px #d9006c;/*左線*/
}
.yorozu section#seminar h4.close{
  background: #483d8b;/*背景色*/
  border-left: solid 5px #4b0082;/*左線*/
}
.yorozu section#link{
    display: block; padding-top: 100px; margin-top: -100px;
}
@media screen and (max-width: 500px) {
	.yorozu section#seminar h3{font-size:20px;}
	.yorozu section#seminar h3 br{display:inline;}
	.yorozu section#seminar h4 span{display:block;float:none;}
}
/*-------------------------event*/
.yorozu #seminar .event{
	position:relative;
	padding:25px 10px 25px 150px;
	min-height:230px;
	border-bottom:1px solid #AAA;
}
.yorozu #seminar .event figure{
	position:absolute;
	top:20px;
	left:10px;
	max-height:120px;
	max-height:170px;
}
.yorozu #seminar .event figure img{
	border:1px solid rgba(0,0,0,0.3);
}
.yorozu #seminar .event figure a{
	padding:0 0 22px 0;
	background-position:bottom left;
}
.yorozu #seminar .event figure a::before{
	display:none;
}
.yorozu #seminar .event figure a::after{
	content:"PDFダウンロード";
	display:block;
	font-size:1.4rem;
	text-align:left;
}
.yorozu #seminar .event h1{
	font-size:120%;
	font-weight:bold;
}
.yorozu #seminar .event h1 span{
	font-size:75%;
	display:block;
	font-weight:bold;
}
.yorozu #seminar .event dl{
	margin:10px 0 -10px 0;
}
.yorozu #seminar .event dt{
	width:45px;
	font-size:85%;
	margin-top:0.1em;
	float:left;
	background:#E6E6E6;
	text-align:center;
}
.yorozu #seminar .event dd{
	margin-left:55px;
	margin-bottom:10px;
}
@media screen and (max-width: 500px) {
	.yorozu #seminar .event{padding:20px 0;}
	.yorozu #seminar .event figure{position:static;width:120px;margin:0px auto 35px auto;}
}

/*faq
-----------------------------------------------------------------------------------------*/
.main .faq{
	border:1px solid #28A078;
	border-radius:5px;
	margin:10px 0;
	display:block;
	overflow:hidden;
}
.main .faq > div{
	display:block;
}
.main .faq .faq_q{
	background:url(images/accordion.svg) right no-repeat;
	border:none;
	margin:0;
	padding:15px 1em 15px 10px;
	display:flex;
	font-size:105%;
	line-height:1.25;
}
.main .faq .faq_q.open{
	background:#E9F5F1 url(images/accordionopen.svg) right no-repeat;
}
.main .faq .faq_q i{
	font-family:sans-serif;
	font-weight:bold;
	font-style:normal;
	flex-shrink:0;
	width:2em;
	color:#28A078;
}
.main .faq .accordionopen:hover{
	background-color:#E9F5F1;
}
.main .faq .faq_a{
	padding:10px;
}


/*akitenpo
-----------------------------------------------------------------------------------------*/
.main .akitenpo{
	margin-bottom:2em;
}
.main .akitenpo h2{
	font-size:120%;
}
.main .akitenpo h2 span{
	font-size:80%;
	display:block;
}
.main .akitenpo h3{
	font-size:100%;
}
.main .akitenpo div{
	margin-bottom:3em;
}
/*-------------------------定義リスト*/
.main .akitenpo dl{
	font-size:1.6rem;
	margin-top:0.5em;
}
.main .akitenpo dt{
	width:6.5em;
	text-align:center;
	float:left;
	margin:0;
	padding:0.2em 0;
}
.main .akitenpo dd{
	border-bottom:1px solid #E6E6E6;
	padding:0 0 0.5em 7em;
	margin:0 0 0.5em 0;
}
/*-------------------------figure*/
.akitenpo figure{
	display:block;
	float:right;
	padding:10px 0 10px 20px;
	background:#FFF;
}
@media screen and (max-width: 739px) {
	.akitenpo figure{float:none;text-align:center;padding:10px 0;}
}


/*交通アクセス
-----------------------------------------------------------------------------------------*/
.main .access h2{
	background:#073287;
}
.access .title2{
	font-size:110%;
	color:#073287;
	line-height:1.5;
	margin-top:0.5em;
}
.access .title2.kai{
	padding-left:2.5em;
}
.access .title2 .kai{
	background:#073287;
	color:#FFF;
	border-radius:3px;
	display:inline-block;
	width:2.25em;
	text-align:center;
	margin-right:0.25em;
	margin-left:-2.5em;
}
.access .title2.bar{
	padding-left:15px;
	margin-top:1em;
	margin-bottom:10px;
}
.access .title2.bar::before{
	content:"";
	width:6px;
	height:100%;
	background:#073287;
	display:block;
	position:absolute;
	left:0;
	top:0;
	border-radius:3px;
}
.access figure{
	float:right;
	max-width:400px;
	border:1px solid #CCC;
	margin:10px 0;
}
.access .data{
	padding-right:415px;
}
@media screen and (max-width: 1260px) {
	.access figure{float:none;max-width:100%;}
	.access .data{padding-right:0;}
@media screen and (max-width: 1024px) and (min-width: 900px) {
	.access figure{float:right;max-width:400px;}
	.access .data{padding-right:415px;}
}
}

/*メルマガのurl折り返しなど
-----------------------------------------------------------------------------------------*/
.main p.naiyo{
	word-break:break-all;
	overflow-wrap:break-word;
}


/*サイトマップ
-----------------------------------------------------------------------------------------*/
#sitemap > ul > li{
	border-bottom:1px solid #CCC;
	padding-bottom:1em;
	margin:0 0 1em 0;
	list-style-type:none;
}
#sitemap > ul > li > a{
	display:block;
	padding-left:1em;
	background:url(images/ya_maru.svg) left top 0.3em no-repeat;
	text-decoration:none;
	font-weight:bold;
	color:#000;
}
#sitemap > ul > li > a:hover{
	color:var(--color_A);
}
#sitemap ul li ul{
	margin:0 0 0 1em;
	font-size:90%;
}

/*snsbox
-----------------------------------------------------------------------------------------*/
.snsbox{
	position:relative;
}
.snsbox > p{
	font-size:14px;
	line-height:18px;
	min-height:50px;
	padding:5px 0;
	border-radius:12px;
	gap:8px;
}
.snsbox > p a{
	width:40px;
	flex-shrink:0;
}
.snsbox > div{
	border:1px solid #CCC;
	height:400px;
	border-radius:12px;
	overflow:hidden;
}
.snsbox > div div{
	margin:-1px;
}
.snsbox iframe{
	margin:0;height:402px;
}
.snsarea{
	display:grid;grid-template-columns: repeat(4 , 1fr);
	gap:20px;
}
@media screen and (max-width: 1200px) {
	.snsarea{display:grid;grid-template-columns: repeat(2 , 1fr);}
}
@media screen and (max-width: 656px) {
	.snsarea{display:grid;grid-template-columns: repeat(1 , 1fr);max-width:440px;margin:0 auto;padding:0 20px;}
}



/*form
-----------------------------------------------------------------------------------------*/
#form div{
	margin:0;
}
#form .wpcf7-form-control-wrap,
#form .wpcf7-list-item{
	margin-left:0;
	display:block;
}
/*-------------------------form_open*/
.main .form_open{
	text-align:center;
	margin:20px auto 30px auto;
	width:300px;
	padding:10px;
	background:#0071BC url(images/accordion_w.svg) right 1em center no-repeat;
	border-radius:100em;
	font-weight:bold;
	color:#FFF
}
.form_open:hover{
	filter:brightness(75%);
}
.main .form_open.open{
	background:#999 url(images/accordionopen_w.svg) right 1em center no-repeat;
}
/*-------------------------form_title*/
#form .form_title{
	padding:12px;
	background:#0071BC;
}
/*-------------------------form_subtitle*/
#form .form_subtitle{
	background:#333;
	margin-top:50px;
}
/*-------------------------form_item*/
#form .form_item{
	background:#F1F1F1;
	padding:15px;
	border-radius:5px;
	margin:10px 0;
}
#form .form_item h3{
	margin:0;
	border:none;
}
.form_item h3::after{
	content:"任意";
	background:#666;
	font-size:0.8em;
	color:#FFF;
	border-radius:3px;
	padding:0.1em 0.3em;
	float:right;
}
.form_item h3.hissu::after{
	content:"必須";
	background:#ED1E79;
}
/*-------------------------フォーム部品*/
.main #form input[type="checkbox"],
.main #form input[type="radio"],
.main #form select{
}
.main #form input[type="text"],
.main #form input[type="tel"],
.main #form input[type="email"],
.main #form textarea{
	border:1px solid #999999;
	padding:3px;
	width:100%;
	font-size:inherit;
	margin:0;
}
.main #form input[type="file"]{
	font-size:inherit;
}
/*-------------------------checkbox*/
.wpcf7-checkbox{
	display:block;
}
.wpcf7-checkbox label{
	display:flex;
	gap:8px;
	padding:4px 10px;
	background:#FFF;
	border:1px solid #FFF;
	margin-top:3px;
}
.wpcf7-checkbox label:hover{
	border:1px solid #0066DE;
}
/*-------------------------radio*/
.wpcf7-radio{
	display:flex;
	gap:3px;
}
.wpcf7-radio label{
	display:flex;
	gap:8px;
	padding:4px 10px;
	background:#FFF;
	border:1px solid #FFF;
	margin-top:3px;
}
.wpcf7-radio label:hover{
	border:1px solid #0066DE;
}
/*-------------------------jugyoin*/
.jugyoin p{
	display:flex;
	gap:20px 30px;
	flex-wrap:wrap;
}
.main #form .jugyoin input{
	width:80px;
	float:left;
	margin-right:5px;
}
.jugyoin .wpcf7-form-control-wrap::before{
	content:"人";
	display:inline-block;
	height:2em;
}
/*-------------------------同意*/
#doui{
	text-align:center;
}
.doui{
	display:inline-block;
	padding:10px 20px;
	background:#FFFCCC;
	border:1px solid #CCC;
	margin:10px auto;
	border-radius:30px;
}
.doui:hover{
	background:#FFCC66;
}
/*-------------------------画像認証*/
#gazoninsyo label input{
	width:240px !important;
	display:inline-block;
}
/*-------------------------エラー画面*/
#form div.wpcf7-validation-errors{
	border:none;
	margin:0;
	background:red;
	color:#FFF;
	padding:10px;
	text-align:center;
	font-size:18px;
	font-weight:bold;
}
#form .wpcf7c-conf{
	background:#F1F1F1;
	font-size:18px;
	font-weight:bold;
}

/*-------------------------ボタン*/
#form .formbtn{
	padding:10px;
	display:flex;
	justify-content:center;
	align-items:center;
	gap:20px;
}
#form .formbtn li{
	list-style-type:none;
	margin:0;
}
.formbtn input{
	border:none;
	font-size:120%;
	line-height:3;
	width:240px;
	background:#CC0000;
	text-align:center;
	color:#FFF;
	box-shadow: 0 -0.2em rgba(0,0,0,0.3) inset;
	padding-bottom:0.2em;
	border-radius: 6px;	
	position:relative;
}
.formbtn input:hover,
.formbtn input:focus{
	box-shadow: none;
	padding-bottom:0;
	margin-top:0.2em;
}
#form .ajax-loader{
	display:none;
}

/*-------------------------送信完了*/
#form div.wpcf7-mail-sent-ok{
	border:none;
	margin:0;
	background:#009600;
	color:#FFF;
	padding:10px;
	text-align:center;
	font-size:18px;
	font-weight:bold;
}

/*SSLシール
-----------------------------------------------------------------------------------------*/
#ssl{
	width:620px;
	margin:20px auto;
	text-align:left;
	height:100px;
}
#ssl div{
	float:left;
	padding-right:30px;
}
#ssl p{
	font-size:14px;
	line-height:25px;
	color:#55555;
	padding-top:10px;	
}
@media screen and (max-width: 640px) {
	#ssl{width:auto;height:auto;margin:20px 10px;}
	#ssl div{float:none;padding:0;text-align:center;}
	#ssl p{font-size:12px;line-height:20px;}
}