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

.seminarlist .bookbox {
	display: flex;
	justify-content: space-between
}

.seminarlist .book_l {
	width: 65%;
}
.seminarlist .book_r {
	width: 32%;
}
.seminarlist .book_r img {
	border: 1px solid #e4e4e4;
}
.seminar-block {
	border-bottom: 1px solid  #bfbfbf;
	padding-bottom: 40px;
	margin-bottom: 40px;
}





.seminarlist .book_l h2 {
	text-align: left;
	font-size: 26px;
	line-height: 1.8;
	margin-bottom: 10px;
}



@media screen and (max-width:768px) {
	
.seminarlist .book_l {
	width: auto;
}
.seminarlist .book_r {
	width: 70%;
}
.seminarlist .book_r img {
	border: 1px solid #e4e4e4;
}
.seminar-block {
	border-bottom: 1px solid  #bfbfbf;
	padding-bottom: 40px;
	margin-bottom: 40px;
}





.seminarlist .book_l h2 {
	text-align: left;
	font-size: 18px;
	line-height: 1.6;
	margin-bottom: 10px;
}
	
}


/* 改修 */

.seminar-list  {
	display: flex;
	flex-wrap: wrap;
}
.seminar-list li {
	width: 31%;
	position: relative;
margin: 0 1.1%;
	margin-bottom: 30px;
	display: flex;
	flex-direction: column; /* 縦積みする */
	border: 1px solid #dcdcdc;
	padding: 10px;
	box-sizing: border-box;
	border-radius: 8px;
	
}
.seminar-list li img{
	width: 100%;
	height: auto;

}
.seminar-list li .title {
	font-size: 18px;
	font-weight: bold;
	margin: 10px 0 10px 0;
	line-height: 1.6;
}
.seminar-list li .seminar-cate {
	position: absolute;
	top:0;
	background: #db0707;
	text-align: center;
	color: #fff;
	font-size: 14px;
	width: 200px;
	margin-bottom: 10px;
	font-weight: bold;
top:-10px;
left:-10px;
}
.seminar-list li .member {
	position: absolute;
	top:0;
	right:0;
	background: #222;
	text-align: center;
	color: #fff;
	font-size: 14px;
	padding: 5px 5px;
	width: 100px;
	margin-bottom: 10px;
	font-weight: bold;
}
.seminar-list p {
	line-height: 1.6;
	font-size: 14px;
	margin: 0;
	margin-bottom: 10px;
}
.seminar-list li a {
	color: #222;

}
.seminar-list li a:hover {
	color: #222;
}
.btn {
	margin-top: auto;
	bottom:-10px;
}
/* 019 */
.listbutton {
	
}
.listbutton a {
    background: #db0707;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 10px auto;
    width: 90%;
    padding: 10px 25px;
    color: #fff !important;
    transition: 0.3s ease-in-out;
    font-weight: bold;

}
.listbutton a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.listbutton a:hover {
  background: #222;
  color: #FFF;
}
.listbutton a:hover:after {
  right: 1.4rem;
}



/* 019 */
.listDLbutton {
	
}
.listDLbutton a {
	border: 1px solid #1f1f1f;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 10px auto 5px auto;
    width: 90%;
    padding: 5px 25px;
    color: #1f1f1f !important;
    transition: 0.3s ease-in-out;
    font-weight: bold;

}
.listDLbutton a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.listDLbutton a:hover {
  
}
.listDLbutton a:hover:after {
  right: 1.4rem;
}



@media screen and (max-width:768px) {
	
	
/* 改修 */

.seminar-list  {
	display: flex;
	flex-wrap: wrap;
}
.seminar-list li {
	width: 100%;
	position: relative;
	margin: 0 0px;
	margin-bottom: 20px;
	display: flex;
	
}
.seminar-list li .title {
	font-size: 16px;
	font-weight: bold;
	margin: 10px 0;
	line-height: 1.6;
}
.seminar-list li .seminar-cate {
	position: absolute;
	top:-10px;
	background: #db0707;
	text-align: center;
	color: #fff;
	font-size: 12px;
	width: 200px;
	margin-bottom: 10px;
	font-weight: bold;
}
.seminar-list li .member {
	position: absolute;
	top:0;
	right:0;
	background: #222;
	text-align: center;
	color: #fff;
	font-size: 14px;
	padding: 5px 5px;
	width: 100px;
	margin-bottom: 10px;
	font-weight: bold;
}
.seminar-list p {
	line-height: 1.6;
	font-size: 14px;
}
.seminar-list li a {
	color: #222;
	display: flex;
	flex-direction: column; /* 縦積みする */
}
.seminar-list li a:hover {
	color: #222;
}
/* 019 */
.listbutton a {
    background: #db0707;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 10px auto;
    width: 90%;
    padding: 10px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: bold;
	margin-top: auto;
	bottom:-10px;
		font-size: 14px;
}
.listbutton a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.listbutton a:hover {
  background: #222;
  color: #FFF;
}
.listbutton a:hover:after {
  right: 1.4rem;
}


/* 019 */
.listDLbutton {
	
}
.listDLbutton a {
	border: 1px solid #1f1f1f;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 10px auto 0px auto;
    width: 90%;
    padding: 10px 25px;
    color: #1f1f1f !important;
    transition: 0.3s ease-in-out;
    font-weight: bold;
	font-size: 14px;

}
.listDLbutton a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 2rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.listDLbutton a:hover {
  
}
.listDLbutton a:hover:after {
  right: 1.4rem;
}
	
	
	

}


.class01 {
	background: #4eaf60 !important;
	padding: 5px 5px;
	border: 2px solid #fff;
}
.class02 {
	background: #038ee1 !important;
	padding: 5px 5px;
	border: 2px solid #fff;
}
.class03 {
	background: #ff7301 !important;
	padding: 5px 5px;
	border: 2px solid #fff;
}
.class04 {
	background: #b76dcd !important;
	padding: 5px 5px;
	border: 2px solid #fff;
}
.class05 {
	background: #c31700 !important;
	padding: 5px 5px;
	border: 2px solid #fff;
}





.endevent {

}

.endevent a {
    background: #616161 !important;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 10px auto;
    width: 90%;
    padding: 10px 25px;
    color: #fff !important;
    transition: 0.3s ease-in-out;
    font-weight: bold;
pointer-events: none !important;
}


.shikaku {
text-align:center;
font-size:16px;
}
.infobox {
margin-bottom:60px;
}


@media screen and (max-width:768px) {
.endevent {

}

.endevent a {
    background: #616161 !important;
    border-radius: 3px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 10px auto;
    width: 90%;
    padding: 10px 25px;
    color: #fff !important;
    transition: 0.3s ease-in-out;
    font-weight: bold;
pointer-events: none !important;
}


.shikaku {
text-align:center;
font-size:12px;
}
.infobox {
margin-bottom:60px;
}
}


h2.seminar-intro {
	font-size: 1.7rem !important;
	margin-bottom: 20px;
font-weight:bold;
}
.semibutton {
	display: flex;
	justify-content: center;
}
.semibutton div {
	margin: 0 5px;
}
table#cal {
    width: 100%;
    border: 1px #E3E3E3 solid;
    border-collapse: collapse;
    border-spacing: 0;
	font-size: 16px;
	
}

table#cal th {
    padding: 10px;
    border: 1px #E3E3E3 solid;
    background: #F5F5F5;
    font-weight: bold;
    line-height: 120%;
    text-align: left;
}
table#cal td {
    padding: 10px;
    border: 1px #E3E3E3 solid;
    text-align: left;
}

.modaltitle {
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 10px;
}
@media screen and (max-width:768px) {
	
h2.seminar-intro {
	font-size: 16px !important;
	margin-bottom: 10px;
}
.semibutton {
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.semibutton {
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-top: 20px;
}
.semibutton .btn_main {
	margin-top: 0;
}
table#cal {
    width: 100%;
    border: 1px #E3E3E3 solid;
    border-collapse: collapse;
    border-spacing: 0;
	font-size: 12px;
}

table#cal th {
    padding: 5px;
    border: 1px #E3E3E3 solid;
    background: #F5F5F5;
    font-weight: bold;
    line-height: 120%;
    text-align: left;
	width: 35%
	
}
table#cal td {
    padding: 5px;
    border: 1px #E3E3E3 solid;
    text-align: left;
	
}

.modaltitle {
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 10px;
}
}


/*========= モーダル表示のためのCSS ===============*/

/*infoエリアをはじめは非表示*/
#info{
  display: none;
}

/*モーダルの横幅を変更したい場合*/
.modaal-container{
    max-width: 600px;
}

/*モーダルのボタンの色を変更したい場合*/
.modaal-close:after, 
.modaal-close:before{
  background:#ccc;  
}

.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before{
  background:#666;
}
@media screen and (max-width:768px) {
	.modaal-container{
    max-width: 600px;
		padding: 0;
}
}


.introduction .seminar-list {
	justify-content: center;
}




.iconinfo {
	text-align: right;
	margin-right: 20px;
}


.tooltip {
  margin: 50px 0;
}

.tooltip-content {
	text-align: left;
  opacity: 0;
  visibility: hidden;
  font-size: 12px;
  white-space: nowrap;
  border-radius: 5px;
  background: #555;
  color: #fff;
  padding: 5px 10px;
  position: absolute;
  top: -100px;
  right: 0%;
  transform: translateX(-0%);
  transition: 0.3s ease-in-out;
}



.tooltip-content:before {
	content: '';
	position: absolute;
	bottom: -18px;
	left: calc(87% - 9px);
	border: 9px solid transparent;
	border-top: 9px solid #555;
}

.text-tooltip:hover .tooltip-content {
  opacity: 1;
  visibility: visible;
}
  
.text-tooltip {
  position: relative;
}

@media screen and (max-width:768px) {
	



.iconinfo {
	text-align: center;
	margin-right: 0px;
}

.tooltip-content {
	text-align: left;
  opacity: 0;
  visibility: hidden;
  font-size: 12px;
  white-space: wrap;
  border-radius: 5px;
  background: #555;
  color: #fff;
  padding: 5px 10px;
  position: absolute;
  top: -140px;
  right: 0%;
  transform: translateX(-0%);
  transition: 0.3s ease-in-out;
}



.tooltip-content:before {
	content: '';
	position: absolute;
	bottom: -18px;
	left: calc(50% - 9px);
	border: 9px solid transparent;
	border-top: 9px solid #555;
}

.text-tooltip:hover .tooltip-content {
  opacity: 1;
  visibility: visible;
}
  
.text-tooltip {
  position: relative;
	font-size: 14px;
}
	
}



.introduction-list {
	display: flex;
	justify-content: space-between;
}
.introduction-list li {
	width: 49%;
	padding: 20px;
	list-style-type: none;
	border: 1px solid #b5b5b5;
	box-sizing: border-box;
display:flex; flex-direction: column;
}
.introduction-list li .box {
	display: flex;
	justify-content: space-between;
	margin-bottom: 20px;
}

.introduction-list li .box .listL {
	width: 45%;
	margin-top: 7px;
}
.introduction-list li .box .listR {
	width: 52%;
}
.introduction-list li .box .listL img {
	width: 100%;
	height: auto;
}

.introduction-list li .title {
	font-size: 20px;
	font-weight: bold;
	border-bottom: 2px solid #222;
	padding-bottom:10px;
	margin-bottom: 10px;
	line-height: 1.6;
}
.introduction-list li .box .listR p {
	margin: 0;
	padding: 0;
	line-height: 1.8;
	font-size: 16px;
margin-bottom:16px;
}


.introduction-list .listbuttonbox  {
	display: flex;
	justify-content: center;
	margin-top: auto;
}

.dlbutton {
	width: 45%;
	margin: 0 5px;
}

.dlbutton a {
	display: block;
    background: #313131;
    border-radius: 3px;
    position: relative;
    margin: 10px auto;
    padding: 10px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: bold;
	width: 100%;
}
.dlbutton a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 1rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.dlbutton a:hover {
  background: #222;
  color: #FFF;
}
.dlbutton a:hover:after {
  right: 0.8rem;
}



.orderbutton {
	width: 45%;
	margin: 0 5px;
}

.orderbutton a {
	display: block;
    background: #db0707;
    border-radius: 3px;
    position: relative;
    margin: 10px auto;
    padding: 10px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: bold;
	width: 100%;
}
.orderbutton a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 1rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.orderbutton a:hover {
  background: #db0707;
  color: #FFF;
}
.orderbutton a:hover:after {
  right: 0.8rem;
}


@media screen and (max-width:834px) {
	
.introduction-list {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.introduction-list li {
	width:100%;
	padding: 20px;
	list-style-type: none;
	border: 1px solid #b5b5b5;
	box-sizing: border-box;
	margin-bottom: 15px;
}
.introduction-list li .box {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	margin-bottom: 20px;
}

.introduction-list li .box .listL {
	width: 100%;
	margin-top: 0;
	margin-bottom: 10px;
}
.introduction-list li .box .listR {
	width: 100%;
}
.introduction-list li .box .listL img {
	width: 100%;
	height: auto;
}

.introduction-list li .title {
	font-size: 16px;
	font-weight: bold;
	border-bottom: 2px solid #222;
	padding-bottom:10px;
	margin-bottom: 10px;
	line-height: 1.6;
}
.introduction-list li .box .listR p {
	margin: 0;
	padding: 0;
	line-height: 1.6;
	font-size: 14px;
margin-bottom:12px;
}


.introduction-list .listbuttonbox  {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	margin: auto;
}

.dlbutton {
	width: 100%;
	margin: 0 auto;
}

.dlbutton a {
	display: block;
    background: #313131;
    border-radius: 3px;
    position: relative;
    margin: 0 auto 5px;
    padding: 10px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: bold;
	width: 100%;
	font-size: 14px;
}
.dlbutton a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 1rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.dlbutton a:hover {
  background: #222;
  color: #FFF;
}
.dlbutton a:hover:after {
  right: 0.8rem;
}



.orderbutton {
	width: 100%;
	margin: 0 auto;
}

.orderbutton a {
	display: block;
    background: #db0707;
    border-radius: 3px;
    position: relative;
    margin: 0 auto 5px;
    padding: 10px 25px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: bold;
	width: 100%;
	font-size: 14px;
}
.orderbutton a:after {
  content: "";
  position: absolute;
  top: 50%;
  bottom: 0;
  right: 1rem;
  font-size: 90%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: right 0.3s;
  width: 6px;
  height: 6px;
  border-top: solid 2px currentColor;
  border-right: solid 2px currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.orderbutton a:hover {
  background: #db0707;
  color: #FFF;
}
.orderbutton a:hover:after {
  right: 0.8rem;
}
	
}


/* 2024.11.26 add 画面下部追従ポップアップ */
.popup-seminar {
  width: fit-content;
  position: fixed;
  bottom: 100px;
  right: 0;
  z-index: 1;
}
@media screen and (max-width:768px) {
  .popup-seminar {
    bottom: 0;
    right: 50%;
    transform: translateX(50%);
  }
}
