@charset "utf-8";

/*---- トップイメージ ----*/
.course_sec{
	border-radius: 20px;
	background-color: #fff;
}
.course_sec .top_img{
	width: 100%;
	height: 600px;
	border-radius: 20px 20px 0 0;
	background-position: center;
	background-size: cover;
}
.course_sec .img1{
	background-image: url("../images/pixta_42539134.jpg");
}
.course_sec .img2{
	background-image: url("../images/pixta_23928968.jpg");
}
.course_sec .img3{
	background-image: url("../images/pixta_44591763.jpg");
}
/*---- コース案内 ----*/
.dot_div{
	margin:50px 0 10px 0;
}
.dot{
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background-color: #0f74ba;
	margin-bottom: -6px;
}
.dot_p{
	font-size: 25px;
	font-family: "font_B";
	padding-left: 10px;
	letter-spacing: 2px;
}
.course_sec .text{
	padding: 0 30px;
}
/*---- sub_course ----*/
.sub_course .text{
	width: 590px;
}
/*---- 表 ----*/
.table_design05 {
	border: #ccc solid 1px;
	border-collapse: collapse;
	width: 350px;
}
.table_design05 th, .table_design05 td {
	padding: 10px;
}
.table_design05 th {
	color: #4d9bc1;
	font-weight: bold;
	text-align: left;
	width: 110px;
	position: relative;
}
.table_design05 th::after {
	content: '';
	background-color: #c1c7c6;
	position: absolute;
	top: 50%;
	left: 100%;
	transform: translateY(-50%);
	width: 1px;
	height: 60%;
}
.th_long{
	min-width: 130px;
	white-space: nowrap;
}
/*---- 料金表 ----*/
.table_design01 {
  border-collapse: collapse;
  width: 100%;
	margin-top: 5px;
}
.table_design01 th {
	padding:10px 1em;
	border: 2px solid #fff;
	background-color: #4d9bc1;
	color: #fff;
	font-weight: bold;
	text-align: left;
	width: 50%;
}
.table_design01 td {
  border: 2px solid #fff;
  background-color: #e6f1f6;
  padding:10px;
}
/*---- Q&A ----*/
.qa-7 {
    max-width: 700px;
    margin: 10px auto 20px auto;
    border: none;
    border-radius: 25px;
    box-shadow: 0 4px 4px rgb(0 0 0 / 2%), 0 2px 3px -2px rgba(0 0 0 / 5%);
    background-color: #fff;
}
.qa-7 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em 1em 3em;
    color: #333333;
    font-weight: 600;
    cursor: pointer;
}
.qa-7 summary::before,
.qa-7 p::before {
    position: absolute;
    left: 1em;
    font-weight: 600;
    font-size: 1.3em;
}
.qa-7 summary::before {
    color: #75bbff;
    content: "Q";
}
.qa-7 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 3px solid #333333b3;
    border-right: 3px solid #333333b3;
    content: '';
    transition: transform .5s;
}
.qa-7[open] summary::after {
    transform: rotate(225deg);
}
.qa-7 p {
    position: relative;
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: .3em 3em 1.5em;
    color: #333;
    transition: transform .5s, opacity .5s;
}
.qa-7[open] p {
    transform: none;
    opacity: 1;
}
.qa-7 p::before {
    color: #ff8d8d;
    line-height: 1.2;
    content: "A";
}
.faq{
	background-color: lightblue;
	width: 100%;
	padding-bottom: 80px;
	border-radius: 0 0 20px 20px;
}

/*---- 入会のご案内 ----*/
.flow_design07 {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 800px;
	margin: auto;
}

.flow07 {
  padding-left: 0;
}

.flow07 > li {
  list-style-type: none;
  display: flex;
}

.flow07 > li:not(:last-child) {
  margin: 0 0 50px;
}

.flow07 > li .icon07 {
	font-family: "font_B";
	font-size: 16px;
  width: 90px;
  box-sizing: border-box;
  padding: 20px 10px 10px;
  color: #FFF;
  text-align: center;
  background: #0f74ba;
  border-radius: 5px 5px 0 0;
  position: relative;
  line-height: 125%;
  margin: 0;
}
.flow07 > li .icon07::after {
  content: ' ';
  width: 0;
  height: 0;
  border-left: 45px solid transparent;
  border-right: 45px solid transparent;
  border-top: 20px solid #0f74ba;
  position: absolute;
  bottom: -20px;
  left: 0;
}

.flow07 > li dl {
  padding: 0 0 0 30px;
  width: calc(100% - 115px);
}

.flow07 > li dl dt {
  padding: 0 0 5px;
  margin: 0 0 15px;
  font-size: 1.2em;
  font-weight: bold;
  border-bottom: 4px solid #CCCCCC;
  position: relative;
}
.flow07 > li dl dt::after {
  content: '';
  width: 20%;
  height: 4px;
  position: absolute;
  bottom: -4px;
  left: 0;
  background-color: #0f74ba;
}

.flow07 > li dl dd {
  margin: 0;
}




