@charset "UTF-8";

/* ----------------------------------------------------------------
	knowledge
---------------------------------------------------------------- */
.contents_container .main_contents h3 {
  font-size: min(3vw,45px);
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: min(3.33vw,50px);
}
.contents_container .main_contents .img {
  display: block;
  width: 100%;
  margin-bottom: min(5.33vw,80px);
}
p.btnTxt {
  text-align: center;
  font-size: min(1.2vw,18px);
  font-weight: 700;
  padding-bottom: min(1.47vw,22px);
}
.pick {
  position: relative;
  width: 100%;
  background: #F7F7F7;
  border-radius: 6px 0 0 6px;
  margin-bottom: min(5.33vw,80px);
  margin-top: min(5.33vw,80px);
  padding: min(4vw,60px) min(3.33vw,50px) min(4vw,60px) min(6.67vw,100px);
}
.pick h4 {
  width: min(3.33vw,50px);
  height: 100%;
  font-size: min(0.8vw,12px);
  font-weight: 700;
  position: absolute;
  left: 0;
  top: 0;
  background: #1E73EB;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 6px 0 0 6px;
}
.pick h4 span {
  display: block;
  transform: rotate(90deg);
  font-size: min(0.8vw,12px);
  font-weight: 700;
  color: #fff;
  white-space: nowrap;
}
.pick .inr {
  display: flex;
}
.pick .inr dl {
  display: flex;
  flex-direction:column;
  width: 61%;
  margin-right: 5%;
}
.pick .inr dl dt {
  width: 100%;
  color: #1E73EB;
  font-weight: 700;
  font-size: min(1.47vw,22px);
  padding-bottom: min(0.93vw,14px);
  border-bottom: 1px solid #F1F1F1;
  margin-bottom: min(2.4vw,36px);
}
.pick .inr dl dd {
  width: 100%;
  margin-bottom: min(0.67vw,10px);
}
.pick .inr dl dd a {
  position: relative;
  display: flex;
  font-size: min(0.87vw,13px);
  padding-left: min(1.07vw,16px);
}
.pick .inr dl dd a::before {
  content: "●";
  display: block;
  font-size: min(0.53vw,8px);
  color: #1E73EB;
  position: absolute;
  left: 0;
  top: min(0.33vw,5px);
}
.pick .inr p { 
  width: 44%;
}

/* Smartphone
----------------------------------------------- */
@media print,screen and (max-width: 999px) {
  .contents_container .main_contents h3 {
    font-size: 8.61vw;
    margin-bottom: 17.72vw;
  }
  .contents_container .main_contents .img {
    margin-bottom: 17.72vw;
  }
  p.btnTxt {
    font-size: 3.54vw;
    padding-bottom: 5.06vw;
  }
  .pick {
    border-radius: 6px 6px 0 0;
    margin-bottom: 17.72vw;
    margin-top: 17.72vw;
    padding: 0;
  }
  .pick h4 {
    width: 100%;
    height: 15.19vw;
    font-size: 4.05vw;
    position: inherit;
    left: inherit;
    top: inherit;
    border-radius: 6px 6px 0 0;
  }
  .pick h4 span {
    display: block;
    transform: rotate(0deg);
    font-size: 4.05vw;
  }
  .pick .inr {
    display: flex;
    flex-wrap: wrap; 
    padding: 8.86vw 8.54vw;
  }
  .pick .inr dl {
    width: 100%;
    margin-right: 0;
    order: 2;
  }
  .pick .inr dl dt {
    font-size: 5.57vw;
    padding-bottom: 3.8vw;
    margin-bottom: 7.59vw;
  }
  .pick .inr dl dd {
    margin-bottom: 4.05vw;
  }
  .pick .inr dl dd a {
    font-size: 3.29vw;
    padding-left: 4.43vw;
  }
  .pick .inr dl dd a::before {
    font-size: 1.27vw;
    top: 1.77vw;
  }
  .pick .inr p { 
    width: 100%;
    order: 1;
    margin-bottom: 4.05vw;
  }
}/* Smartphone End */


/* ----------------------------------------------------------------
	qa lower
---------------------------------------------------------------- */
.toc {
  position: relative;
  width: 100%;
  background: #F7F7F7;
  border-radius: 6px 0 0 6px;
  margin-bottom: min(5.33vw,80px);
  margin-top: min(5.33vw,80px);
  padding: min(4vw,60px) min(3.33vw,50px) min(4vw,60px) min(6.67vw,100px);
}
.toc h4 {
  width: min(3.33vw,50px);
  height: 100%;
  font-size: min(0.8vw,12px);
  font-weight: 700;
  position: absolute;
  left: 0;
  top: 0;
  background: #384894;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 6px 0 0 6px;
}
.toc h4 span {
  display: block;
  transform: rotate(90deg);
  font-size: min(0.8vw,12px);
  font-weight: 700;
  color: #fff;
  white-space: nowrap;
}
.toc .inr {
  display: flex;
}
.toc .inr dl {
  display: flex;
  flex-direction:column;
  width: 100%;
}
.toc .inr dl dt {
  width: 100%;
  color: #384894;
  font-weight: 700;
  font-size: min(1.47vw,22px);
  padding-bottom: min(0.93vw,14px);
  border-bottom: 1px solid #F1F1F1;
  margin-bottom: min(2.4vw,36px);
}
.toc .inr dl dd {
  width: 100%;
  margin-bottom: min(0.67vw,10px);
}
.toc .inr dl dd a {
  position: relative;
  display: flex;
  font-size: min(1vw,15px);
  padding-left: min(1.07vw,16px);
}
.toc .inr dl dd a::before {
  content: "●";
  display: block;
  font-size: min(0.53vw,8px);
  color: #384894;
  position: absolute;
  left: 0;
  top: min(0.33vw,5px);
}
ul.ans {
  width: 100%;
  margin-bottom: min(5.33vw,80px);
}
ul.ans li {
  margin-bottom: min(5.33vw,80px);
}
ul.ans li h4 {
  padding: min(0.67vw,10px) 0 min(0.67vw,10px) min(2.13vw,32px);
  border-left: min(0.33vw,5px) solid #384894;
  font-size: min(2.13vw,32px);
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: min(2.67vw,40px);
}
ul.ans li p {
  font-size: min(1.2vw,18px);
}
ul.ans li dl {
  margin-top: min(2.4vw,36px);
}
ul.ans li dl dt {
  font-size: min(1.2vw,18px);
  font-weight: 700;
}
ul.ans li dl dd::before {
  content: "・　";
  display: inline-block;
  font-size: min(1.2vw,18px);
  font-weight: 700;
}

/* Smartphone
----------------------------------------------- */
@media print,screen and (max-width: 999px) {
  .toc {
    border-radius: 6px 6px 0 0;
    margin-bottom: 17.72vw;
    margin-top: 17.72vw;
    padding: 0;
  }
  .toc h4 {
    width: 100%;
    height: 15.19vw;
    font-size: 4.05vw;
    position: inherit;
    left: inherit;
    top: inherit;
    border-radius: 6px 6px 0 0;
  }
  .toc h4 span {
    transform: rotate(0deg);
    font-size: 4.05vw;
  }
  .toc .inr {
    display: block;
    padding: 8.86vw 8.54vw;
  }
  .toc .inr dl {
    display: block;
  }
  .toc .inr dl dt {
    font-size: 5.57vw;
    padding-bottom: 3.8vw;
    margin-bottom: 7.59vw;
  }
  .toc .inr dl dd {
    margin-bottom: 3.8vw;
  }
  .toc .inr dl dd a {
    font-size: 3.54vw;
    padding-left: 5.57vw;
  }
  .toc .inr dl dd a::before {
    font-size: 1.27vw;
    top: 1.77vw;
  }
  ul.ans {
    margin-bottom: 16.46vw;
  }
  ul.ans li {
    margin-bottom: 12.66vw;
  }
  ul.ans li h4 {
    padding: 0 0 0 4.05vw;
    border-left: 1.01vw solid #384894;
    font-size: 6.58vw;
    line-height: 1.4;
    margin-bottom: 12.66vw;
  }
  ul.ans li p {
    font-size: 4.3vw;
  }
  ul.ans li dl {
    margin-top: 6.33vw;
  }
  ul.ans li dl dt {
    font-size: 4.3vw;
  }
  ul.ans li dl dd::before {
    content: "・";
    display: inline-block;
    font-size: 4.3vw;
  }
}/* Smartphone End */

.contents_container .main_contents .cont03 {
  margin-bottom: min(6vw,90px);
}

.contents_container .main_contents .cont03 ul {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	flex-wrap: wrap;
	width: 100%;
	margin: 0 auto;
  padding-bottom: min(2.67vw,40px);
}
.contents_container .main_contents .cont03 ul li {
  width: 48.8%;
  margin-right: 2.4%;
  border: 2px solid #C7C7C7;
  border-radius: 6px;
  margin-bottom: min(1.33vw,20px);
}
.contents_container .main_contents .cont03 ul li:nth-child(2n) {
  margin-right: 0;
}
.contents_container .main_contents .cont03 ul li a {
  display: flex;
  flex-direction:column;
  padding: min(2.67vw,40px);
}
.contents_container .main_contents .cont03 ul li a h4 {
  position: relative;
  font-size: min(1.33vw,20px);
  font-weight: 700;
  padding-bottom: min(1.6vw,24px);
  margin-bottom: min(2vw,30px);
}
.contents_container .main_contents .cont03 ul li a h4::after {
  content: "";
  display: block;
  width: min(4vw,60px);
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
  background: #14171A;
}
.contents_container .main_contents .cont03 ul li a p {
  font-size: min(1.07vw,16px);
  margin-bottom: min(1.67vw,25px);
}
.contents_container .main_contents .cont03 ul li a span {
  font-size: min(1vw,15px);
  font-weight: 700;
}

@media print,screen and (max-width: 999px) {
	  .contents_container .main_contents .cont03 {
    margin-bottom: 17.72vw;
  }
	  .contents_container .main_contents .cont03 ul {
    padding-bottom: 11.39vw;
  }
  .contents_container .main_contents .cont03 ul li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 5.06vw;
  }
  .contents_container .main_contents .cont03 ul li a {
    padding: 7.59vw;
  }
  .contents_container .main_contents .cont03 ul li a h4 {
    font-size: 4.81vw;
    padding-bottom: 5.06vw;
    margin-bottom: 5.57vw;
  }
  .contents_container .main_contents .cont03 ul li a h4::after {
    width: 15.19vw;
  }
  .contents_container .main_contents .cont03 ul li a p {
    font-size: 4.3vw;
    margin-bottom: 5.57vw;
  }
  .contents_container .main_contents .cont03 ul li a span {
    font-size: 3.54vw;
  }
}