@charset "UTF-8";
#defsapo {
  color: #4d4c4a;
  line-height: 1.8;
}
#defsapo a,
#defsapo a:link,Ff
#defsapo a:visited {
  text-decoration: underline;
  color: #2d9e9c;
}
#defsapo blockquote {
  margin: 0;
}

.fblock {
  display: none;
  float: none!important;
}
.fblock.last {
  display: block;
  width: 100%;
  max-width: 700px;
  margin-left: auto!important;
  margin-right: auto!important;
}

.h1 {
  font-weight: bold;
}
#defsapo h1 {
  margin: 0!important;
}
h2 {
  font-size: 1.5rem;
  font-weight: bold;
  color: #2d9e9c;
  text-align: center;
  margin-bottom: 1.5em;
}
h3 {
  font-size: 1.25rem;
  font-weight: bold;
  margin-bottom: 1em;
}


/* デフサポコラム */
a.cat-name,
a.cat-name:link,
a.cat-name:visited {
  text-decoration: none;
  color: #fff;
}
a.cardtype__link,
a.cardtype__link:link,
a.cardtype__link:visited {
  text-decoration: none;
}
.sng-box a,
.sng-box a:link,
.sng-box a:visited,
.footer-contents a,
.footer-contents a:link,
.footer-contents a:visited {
  text-decoration: none;
}
a.like_insta,
a.like_insta,
a.like_insta {
  text-decoration: none;
  color: #fff;
}


#header {
  margin-bottom: 0;
}
#header img {
  max-width: 240px;
}
#header-box,
.pickup-contents-box-post-type {
  display: none;
}
#defsapo #logo a {
  text-decoration: none;
}
/*#drawer__open {
  top: 18px!important;
}*/
#menu-item-3663 label {
  display: inline!important;
}
.totop {
    background: #2d9e9c;
}

img {
  max-width: 100%;
  height: auto;
}
ul {
  margin: 0;
  padding: 0;
}
.jumbotron {
  border-radius: 0;
  margin-bottom: 0;
}
#defsapo {
  background-color: #ffffff;
}
#defsapo .video {
  position:relative;
  width:100%;
  padding-top:56.25%;
}
#defsapo .video iframe {
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}
a {
  color: #2d9e9c;
}
a:hover img {
  opacity: 0.6;
}

#defsapo .btn {
  border-radius: 2em;
}
#defsapo a.btn,
#defsapo a.btn:link,
#defsapo a.btn:visited, 
#defsapo .btn a,
#defsapo .btn a:link,
#defsapo .btn a:visited {
  text-decoration: none;
}
.btn-primary {
  color: #fff;
  background-color: #2d9e9c;
  border-color: #2d9e9c;
  border-radius: 2em;
}
#defsapo a.btn.btn-primary {
  color: #fff;
}
#defsapo a.btn.btn-outline-primary {
  color: #2d9e9c;
  border-color: #2d9e9c;
  border-radius: 2em;
}
#defsapo a.btn:hover,
#defsapo .btn a:hover,
#defsapo a.btn-outline-primary:hover,
#defsapo .btn.btn-outline-primary a:hover {
  color: #fff;
  border-color: #2d9e9c;
  background-color: #2d9e9c;
}
#defsapo a.btn.btn-primary:hover,
#defsapo .btn.btn-primary a:hover {
  color: #2d9e9c;
  border-color: #2d9e9c;
  background-color: inherit;
}

#defsapo a.btn.btn-success {
  background-color: #2d9e9c;
  border-color: #2d9e9c;
  color: #fff;
}
#defsapo a.btn.btn-action {
  background-color: #fef175;
  color: #2d9e9c;
}
#defsapo a.btn.btn-lg {
  display: block;
  width: 100%;
  max-width: 600px;
  padding: 1em;
  margin-left: auto;
  margin-right: auto;
  font-size: 1.1rem;
}
.btnArea {
  margin-bottom: 2em;
}
.btnArea .btn-lg {
  width: 100%;
}
.btnArea .btn-lg + .btn-lg {
  margin-top: 1em;
}

.defHLogo {
  max-width: 120px;
}
.defCont {
  padding-top: 4em;
  padding-bottom: 4em;
  width: 90%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.defConItem {
  width: 90%;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}
.defConIntro {
  margin-bottom: 2em;
  margin-left: auto;
margin-right: auto;
max-width: 600px;
}


/* 下層共通 */
.defPage .defPagTit {
  background-color: #2d9e9c;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 2em;
  min-height: 130px;
}
.defPage h1 {
  font-size: 1.6rem;
  font-weight: bold;
}
.defPage .defCont {
  max-width: 700px;
}

.defPagTbl {
  border: #e6e6e6 1px solid;
  font-size: 0.9rem;
  width: 100%;
  max-width: 800px;
  margin-bottom: 2em;
  line-height: 1.8;
}
.defPagTbl tr + tr {
  border-top: #e6e6e6 1px solid;
}
.defPagTbl th + th,
.defPagTbl th + td,
.defPagTbl td + td {
  border-left: #e6e6e6 1px solid;
}
.defPagTbl th {
  background-color: #fefcf7;
  font-weight: normal;
  padding: 0.5em;
  width: 7em;
}
.defPagTbl td {
  padding: 0.5em;
}



/* top */
.defSemBrand .sp,
.carousel-item .sp {
  display: block;
}
.defSemBrand .pc,
.carousel-item .pc {
  display: none;
}

#defsapo #carouselExampleIndicators {
margin-bottom: 60px;
}

#defsapo .carousel-indicators {
bottom: -53px;
margin-left: 0;
margin-right: 0;
}
#defsapo .carousel-indicators li {
  width: 7px;
  height: 7px;
  border-radius: 100%;
  margin-right: 8px;
  margin-left: 8px;
}
#defsapo .carousel-indicators li {
  background-color: #2d9e9c;
}
#defsapo a.left.carousel-control {
  top: 50%;
  position: absolute;
  left: -35px;
}
#defsapo a.right.carousel-control {
  top: 50%;
  position: absolute;
  right: -35px;
}
#defsapo .fa-arrow-circle-o-left:before,
#defsapo .fa-arrow-circle-o-right:before {
  font-size: 2em;
  opacity: 0.6;
}


.defTopIntro {
  margin-top: 3em;
}
.defTopIntro h2 {
  margin-bottom: 1em;
}
.defTopIntTxt {
  width: 90%;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2em;
}
.defTopIntImg {
  max-width: 600px;
  margin-left: 5%;
}

.defTopWill .video {
  margin-bottom: 1em;
}
.defTopWilImg {
  text-align: center;
  margin-bottom: 1em;
}
.defTopWilTxt {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2em;
}

.defTopPerformance {
  width: 90%;
  max-width: 700px;
  margin-left: auto;
  margin-right: auto; 
}
.defTopPerIteArea a {
  text-decoration: none;
}
.defTopPerItem {
 display: flex;
 justify-content: space-between;
margin-bottom: 1.5em;
}
.defTopPerItem a {
  padding: 0.5em;
  display: flex;
  justify-content: space-between;
}
.defTopPerItem a:hover {
  background: #eff7f4;
  color: #2d9e9c;
}
.defTopPerIteImg {
  width: 50%;
  max-width: 300px;
}

.defTopPerIteText {
  padding: 0;
  width: 55%;
  margin-right: 2%; 
}
.defTopPerIteText h3 {
  color: #2d9e9c;
  font-size: 1.1em;
}
.defTopPerIteText p {
  font-size: 0.9rem;
  color: #4d4c4a;
}
.defTopPerIteText p.defTopPerIteTexLink {
  color: #2d9e9c;
  text-decoration: underline;
}
.defTopPerItem a:hover .defTopPerIteTexLink {
  text-decoration: none;
}

.defTopNewCont {
  margin-bottom: 3em;
}
.defTopNews .badge a {
 pointer-events: none;
 color: #fff;
 text-decoration: none;
}

.defTopBlog {
  background-color: #eff7f4;
}
.defTopBloTit {
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
}
.defTopBloIntro {
  margin-bottom: 2em;
}
.defTopBloCard {
  margin-bottom: 2em;
}
.defTopBloCard .metabox {
  display: flex;
  align-items: center;
  background: #fff;
  margin-bottom: 1em;
  border-radius: 1em;
  overflow: hidden;
}
.defTopBloCard a {
  display: inline-block;
  text-decoration: none;
}
.defTopBloCard a:hover {
  opacity: 0.6;
}
.defTopBloCarImg {
width: 70%;
}
.defTopBloCarTxtArea {
box-sizing: border-box;
padding: 1em;
margin-bottom: 0;
font-size: 12.5px;
width: 100%;
text-decoration: none;
}
.defTopBloCarTag {
  color: #a3a3a2;
  font-size: 13px;
  display: inline-block;
  margin-bottom: 0.6em;
}
.defTopBloCarTit {
  font-size: 14px;
}
.bg-green {
  background-color: #eff7f4;
}
.space-2 {
    padding-top: 4rem;
    padding-bottom: 4rem;
}
.bg-img-hero {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center;
}
.card-img-right {
    width: 100%;
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
}
.border-left-0 {
    border-left: 0 !important;
}
.card {
  flex: initial;
}
.defTopTraining {
background-color: #e9ecef;
margin-bottom: 0;
}
.defTopMember {
  background-color: #fffef1;
}
.defTopTraining .defConIntro,
.defTopMember .defConIntro {
  max-width: inherit;
}
.defTopMemTit {
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
}

.defTopMemBtnLogin {
  text-align: center;
}

footer.footer {
  background: #eee9e1;
  padding: 20px;
}
.footer a {
    color: #4d4c4a!important;
}
/*footer,
footer a {
  color: #4d4c4a!important;
}*/
footer .footer-inner li {
color: #ddd;
display: inline-block;
padding: 5px 15px;
margin: 0 5px;
border-right: 1px solid #ddd;
}
footer .footer-inner li:first-child {
border-left: 1px solid #ddd;
}
.footer-menu-sp .menu-item {
  width: 50%;
  font-size: 12px;
}
.footer-menu-sp .menu-item a {
  margin: 10px;
  padding: 10px;
  color: #2d9e9c;
  border: 1px solid #2d9e9c;
  border-radius: 2em;
}
footer .footer-inner #copyright {
  color: #a89f9a;
  margin-top: 20px;
}

#defsapo #sp-footer-box { 
margin-top: 0;  
} 
#defsapo .footer-menu-sp {  
display: block; 
position: fixed;  
width: 100%;  
bottom: 0px;  
z-index: 9999;  
background: #fff; 
box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.25);  
}

/* TOP 2020/09/19 追記 */
.defTopHighlight {
width: 90%;
max-width: 800px;
margin-left: auto;
margin-right: auto;
margin-bottom: 30px;
}
.defTopHigTit {
display: flex;
justify-content: space-between;
align-items: center;
}
.defTopHigTit h2 {
font-size: 1.1em;
color: #4d4c4a;
text-align: left;
display: inline;
}
.defTopHigTit a {
font-size: 0.8em;
}
.defTopHigList {
margin: 0;	
}
.defTopHigList li {
line-height: 1.4;
}

.defTopThoCard {
background-color: #ffffff;
border-radius: 20px;
box-shadow: 0 3px 10px rgba(64,76,66,0.18);
overflow: hidden;
width: 85%;
max-width: 350px;
margin-left: auto;
margin-right: auto;
}
.defTopThoCard .sp {
display: block;
}
.defTopThoCard .pc {
display: none;
}

.defTopThoCard+.defTopThoCard {
margin-top: 1.6em;
}
#defsapo .defTopThoCard a {
text-decoration: none;
}
.defTopThoCarCatch {
display: flex;
flex-flow: wrap;
align-items: center;
}
.defTopThoCarCatch p {
color: #4d4c4a;
font-size: 0.9em;
font-weight: bold;
line-height: 1.1em;
padding-left: 40px;
margin-bottom: 0;
}
.defTopThoCarCatch p small {
font-size: 0.68em;
}
.defTopThoCarText {
padding: 15px;
}
.defTopThoCarText h3 {
color: #4d4c4a;
font-size: 0.9em;
margin-bottom: 8px;
}
.defTopThoCarText p {
color: #4d4c4a;
font-size: 0.78em;
line-height: 1.4;
margin-bottom: 0;
}
#defsapo .defTopThoCard a.btn.btn-lg {
font-size: 0.9em;
padding: 0.8em;
}
.defTopThoCardHorizontal a {
display: flex;
justify-content: space-between;
}
.defTopThoCardHorizontal .defTopThoCarCatch {
width: 40%;
}
.defTopThoCardHorizontal .defTopThoCarText {
width: 60%;
}

@media (min-width: 768px) {
.defTopThoCard .sp {
display: none;
}
.defTopThoCard .pc {
display: block;
}
.defTopThoTxt {
text-align: center;		
}
.defTopThoCardCtr {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
} 
.defTopThoCard {
margin-left: 0;
margin-right: 0;
margin-bottom: 40px;
width: 48%;
max-width: unset;
}
.defTopThoCard+.defTopThoCard {
margin-top: 0;
}
.defTopThoCarText {
padding: 20px;
}
	
.defTopThoCardHorizontal a {
display: inherit;
}
.defTopThoCardHorizontal .defTopThoCarCatch,
.defTopThoCardHorizontal .defTopThoCarText {
width: unset;
}
}

.defTopTraTxt {
max-width: 700px;
margin-left: auto;
margin-right: auto;
}

.defTopNews {
width: 90%;
max-width: 700px;
margin-left: auto;
margin-right: auto;
margin-bottom: 30px;
}
.defTopNewsList {
margin-top: 50px;
}
.defTopNewCont .list-group {
font-size: 0.9em;
}
.defTopNewCont .list-group li+li {
margin-top: 10px;
}
.defTopNewCont .list-group h5 {
font-weight: normal;
}
.defTopNewCont p {
margin-bottom: 0;
}
.defTopContact {
width: 90%;
max-width: 700px;
margin-left: auto;
margin-right: auto;
padding-top: 40px;
padding-bottom: 60px;
}


/* デフゼミ */
.defSemBrand {
  width: 100%;
  max-width: 800px;
  padding-top: 3em;
  margin-left: auto;
  margin-right: auto;
}
.defSemBrand h1 {
  margin-bottom: 1em;
  text-align: center;
}
.defSemBrand p {
  max-width: 600px;
}
.defSemCvr {
  margin-bottom: 2em;
}

.defSemIntro.defCont {
  margin-top: 2em;
}
.defSemIntAsk {
  margin-bottom: 1em;
}
.defSemArrow {
  text-align: center;
  margin-bottom: 1.5em;
}
.defSemArrow img {
  width: 50%;
  max-width: 300px;
}
.defSemiPoint {
  margin-bottom: 3em;
}
.defSemiPoint div {
  text-align: center;
  margin-bottom: 1em;
}
.defSemiPoint p {
  font-size: 0.9em;
}

.defCVRCont {
  background-color: #2d9e9c;
  color: #fff;
}
.defCVRCont h2 {
  color: #fff;
}
.defCVRImg {
  margin-bottom: 2em;
  text-align: center;
}

.defSemDescription {
  width: 90%;
  max-width: 700px;
  margin-top: 4em;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 4em;
  text-align: center;
}
.defSemDesTit {
 background: url(../img/defsemi/tit_bg_brd.png) #eba82b;
 padding: 0.5em;
 font-size: 1.8em;
 display: inline-block;;
 color: #fff;
 font-weight: bold;
  margin-bottom: 1em;
}
.defSemDesMTit {
  color: #eba82b;
  font-size: 1.4em;
  font-weight: bold;
  margin-bottom: 1em;
  position: relative;
  display: inline-block;
}
.defSemDesMTit:before {
  background: url(../img/defsemi/line_orange_l.png);
  background-size: 32px;
  content: "";
  position: absolute;
  bottom: 0.5em;
  left: -52px;
  width: 32px;
  height: 45px;
}
.defSemDesMTit:after {
  background: url(../img/defsemi/line_orange_r.png);
  background-size: 32px;
  content: "";
  position: absolute;
  bottom: 0.5em;
  right: -43px;
  width: 32px;
  height: 45px;
}
.defSemDesTxt {
  font-size: 1.2em;
  font-weight: bold;
}

.defSemDesSample {
  background-color: #fffef1;
  padding-top: 4em;
  padding-bottom: 4em;
  margin-bottom: 1em;
}
.defSemDesSample h3 {
  font-size: 1.5rem;
  color: #2d9e9c;
  text-align: center;
  margin-bottom: 1.5em;
}
.defSemDesSamSlide {
width: 85%;
max-width: 350px;
margin-left: auto;
margin-right: auto;
}
.defTopSliHead {
font-size: 0.9em;
font-weight: bold;
margin-bottom: 0.1em;
} 
.defSemRecItem li {
  background-color: #fffcea;
  padding: 1em;
  margin-bottom: 1em;
}
.defSemRecItem h3 {
  position: relative;
  padding-top: 12px;
  padding-left: 64px;
  line-height: 1.6;
  font-size: 1.2em;
  font-weight: bold;
  margin-bottom: 1em;
}

.defSemRecItem li h3:before {
  content: "";
  position: absolute;
  top: 16px;
  left: 0;
  width: 50px;
  height: 50px;
  padding-right: 10px;
}
.defSemRecItem li:first-child h3:before {
  background: url(../img/defsemi/reco_tit01-min.png) no-repeat;
  background-size: 50px;
}
.defSemRecItem li:nth-child(2) h3:before {
  background: url(../img/defsemi/reco_tit02-min.png) no-repeat;
  background-size: 50px;
}
.defSemRecItem li:nth-child(3) h3:before {
  background: url(../img/defsemi/reco_tit03-min.png) no-repeat;
  background-size: 50px;
}
.defSemRecTxt {
  font-size: 0.9em;
}
.defSemRecCopy {
  color: #eba82b;
  font-weight: bold;
  font-size: 1.5em;
  text-align: center;
}
.defSemRecCopy strong {
  font-size: 1.8rem;
}


.defSemGreeting {
  background-color: #f3fafa;
  padding-top: 5em;
  padding-bottom: 4em;
}
.defSemGrePh {
  margin-bottom: 2em;
}
.defSemGreName {
  color: #2d9e9c;
  font-size: 1.3rem;
  text-align: center;
  margin-bottom: 1em;
}
.defSemGreCopy strong {
background: #fef175;
}

.defSemKadai {
  background: url(../img/defsemi/bg.png);
  background-size: 12px;
  margin-top: 4em;
  margin-bottom: 2em;
  padding: 2em;
}
.defSemKadai h2 {
  padding-bottom: 0.5em;
  border-bottom: 2px solid #2d9e9c;
}
.defSemKadList div + div {
  margin-top: 2em;
}
.defSemKadList dt:before {
  content: "●";
  color: #2d9e9c;
  font-size: 1.1em
}
.defSemKadList dt {
  font-size: 1.1em;
  margin-bottom: 0.5em;
}
.defSemKadList dd {
  font-size: 0.9em;
}

.defSemVoice {
  max-width: 700px;
}
.defSemVoiImg {
  width: 80%;
  max-width: 300px;
  margin-left: auto;
  margin-right: auto;
}
.defSemSupport {
  text-align: center;
}
.defSemSupCopy {
  color: #2d9e9c;
  font-size: 1.4em;
  font-weight: bold;
  margin-bottom: 1em;
  position: relative;
  display: inline-block;
}
.defSemSupCopy:before {
  background: url(../img/defsemi/line_green_l.png);
  background-size: 32px;
  content: "";
  position: absolute;
  bottom: 0.5em;
  left: -52px;
  width: 32px;
  height: 45px;
}
.defSemSupCopy:after {
  background: url(../img/defsemi/line_green_r.png);
  background-size: 32px;
  content: "";
  position: absolute;
  bottom: 0.5em;
  right: -43px;
  width: 32px;
  height: 45px;
}
.defSemSupTit {
background-color: #eba82b;
 padding: 0.5em;
 font-size: 1.8em;
 display: inline-block;;
 color: #fff;
 font-weight: bold;
  margin-bottom: 1em;
  line-height: 1.4;
}
.defSemSupImg {
  margin-bottom: 3em;
}
.defSemSupTxt {
  font-size: 1.6em;
  font-weight: bold;
  line-height: 1.4; 
}

.defSemDtl {
  background-color: #fdf9ef;
}
.defSemDtl .defCont {
  max-width: 700px;
}

.defSemDtl .defPagTbl {
  background-color: #fff;
}
.defSemDtl .defPagTbl th {
  background-color: #f3fafa;
}
.defSemFlow {
  max-width: 700px;
}
.defCouPayment {
  background-color: #fdf9ef;
}
.defCont {
  max-width: 700px;
}

/* ジュニアコース LP (2/28追記) */
.defSemCrowdFundingItem li {
  background-color: #fffcea;
  padding: 1em;
  margin-bottom: 1em;
}
.defSemCrowdFundingItem h3 {
  position: relative;
  padding-top: 12px;
  padding-left: 64px;
  line-height: 1.6;
  font-size: 1.2em;
  font-weight: bold;
  margin-bottom: 1em;
}

.defSemCrowdFundingItem li h3:before {
  content: "";
  position: absolute;
  top: 16px;
  left: 0;
  width: 50px;
  height: 50px;
  padding-right: 10px;
}
.defSemCrowdFundingItem li:first-child h3:before {
  background: url(../img/defsemi/crowdfunding-study.png) no-repeat;
  background-size: 50px;
}
.defSemCrowdFundingItem li:nth-child(2) h3:before {
  background: url(../img/defsemi/crowdfunding-gift.png) no-repeat;
  background-size: 50px;
}
.defSemCrowdFundingItem li:nth-child(3) h3:before {
  background: url(../img/defsemi/crowdfunding-share.png) no-repeat;
  background-size: 50px;
}
.defSemCrowdFundingTxt {
  font-size: 0.9em;
}


/* デフサポコラム */
.defColCTA {
  margin: 0 auto;
}
.defCVRDefsemi {
  text-align: center;
}

/* デフゼミお申し込みページ */


/* 実績紹介ページ */
.defPerKigyoujyuku {
  border: #ffee85 5px solid;
  padding: 2em;
  margin-bottom: 5em;
}
.defPerKigyoujyuku li + li {
	margin-top: 1em;
}

/* 2020/8/19追記 */
.defPerMedList li {
	display: flex;
	align-items: flex-end;
	padding-top: 1em;
	padding-bottom: 1em;
	margin-left: auto;
	margin-right: auto;
	max-width: 400px;
}
.defPerMedList li + li {
	border-top: 1px solid #DADADA;
}
.defPerMedLisImg {
	margin-right: 3%;
	width: 37%;
	max-width: 160px;
}
.defPerMedLisTxt {
	font-weight: bold;
	line-height: 1.1;
}
.defPerMedLisTxtNumber {
	font-size: 1.05em;
}
.defPerMedLisTxtNumber {
	font-size: 1.5em;
}
.defPerMedLisTxtNumber strong {
	font-size: 3em;
	color: #2d9e9c;
}
@media (min-width: 768px) {
.defPerMedList li + li {
	border-top: none;
}
.defPerMedLisImg {
	max-width: 75px;
}
.defPerMedLisTxt {
font-size: 0.7em;	
}
}


.defPerMedia {
  margin-bottom: 4em;
}
.defPerSerItem {
  margin-bottom: 4em;
}
.defPerSerPh {
  margin-bottom: 2em;
}
.defPerSerPh2 {
  display: flex;
  justify-content: space-between;
  font-size: 0.8em;
}
.defPerSerPh2 > div,
.defPerSerPh2 > img {
  width: 48%;
}
.defPerSerOutline {
  background-color: #fefcf7;
  padding-top: 3em;
  padding-bottom: 3em;
}
.defCont {
    padding-top: 4em;
    padding-bottom: 4em;
    width: 90%;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
.defPerSerOutYear h3 {
  padding-bottom: 0.5em;
  border-bottom: 2px solid #4d4c4a;
}
.defPerSerOutYear + .defPerSerOutYear {
  margin-top: 2em;
  padding-top: 2em;
  border-top: 1px solid #dddddd;
}
.defPerSerOutYeaList img.alignleft {
  padding: 4px;
  margin: 0 20px 2px 0;
  display: inline;
  float: none;
}
.defPerSerOutYeaList li {
  display: flex;
}
.defPerSerOutYeaList li div {
  width: 80px;
}
.defPerSerOutYeaList li strong {
 padding-left: 5px;
 padding-right: 10px;	
}


/* デフサポとは？ */
.defAboVisTxt {
  margin-bottom: 2em;
}
.defAboVisImg {
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2em;
}
.defAboDetail {
  padding-top: 4em;
  padding-bottom: 4em;
  background: #fefcf7;
}
.defAbout.defTopPerformance {
  margin-top: 0;
}


/* カウンセリング */
.defCouIntro {
  background-color: #fdf9ef;
}
.defCouIntro .defCont {
  max-width: 700px;
}
.defCouIntTxtArea {
  margin-bottom: 4em;
}
.defCouIntImg {
  margin-bottom: 2em;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
  max-width: 400px;
}
.defCouIntTxt {
  text-align: center;
}
.defCouIntList li {
  margin-bottom: 3em;
}
.defCouTarImg {
  text-align: center;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}
.defCouTarImg img + img {
  margin-top: 1.5em;
}
.defCouTarCase {
  margin-top: 3em;
  text-align: center;
}

.defCouInstructor {
  background-color: #fdf9ef;
}
.defCouInsCont {
  display: flex;
  justify-content: center;
  align-items: center;
}
.defCouInsImg {
  margin-right: 1.5em;
  margin-bottom: 1em;
  width: 38%;
  max-width: 200px;
}
.defSemGreName {
  margin-top: 1em;
  font-size: 0.9em;
}
.defCouInsTxt {
  width: 60%;
}

.defCouVoiDtl {
  margin-bottom: 4em;
}
.defCouVoiDtlImg {
  border: 2px solid #ddd;
  padding: 1em;
  text-align: center;
}

.defCouCase {
  background-color: #fdf9ef;
}
.defCouCasList li {
  margin-bottom: 3em;
}

.defCouFlow {
  background-color: #E9ECEF;
}
.defCouFloImg {
  text-align: center;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}

.defCouPrice {
  background-color: #fdf9ef;
}
.defCouPrice .defCont {
  max-width: 400px;
}
.defCouPriTbl .defPagTbl {
border: 2px solid #2d9e9c;
}
.defCouPriTbl .defPagTbl td {
  border: 0;
  padding: 1.3em;
}
.defCouPriTbl .defPagTbl tr {
  border-color: #2d9e9c;
}
.defCouPriTbl .defPagTbl td:first-child {
  width: 10em;
}
.defCouPriTblSale {
  color: #2d9e9c;
  font-weight: bold;
}
.defCouPriTblSale strong {
  font-size: 1.6em;
}
.defCouPayFaq {
  margin-bottom: 3em;
  text-align: center;
}

.defCouPayment .defConIntro {
  max-width: 400px;
}
.defCouPayTxt {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}
.defCouPayList {
  border: 2px solid #2d9e9c;
  padding: 1.3em;
  margin-bottom: 2em;
}
.defCouPayBtnArea li {
  margin-bottom: 2em;
}


/* デフゼミ */
.defMemSns {
  background-color: #fdf9ef;
  padding: 2em;
}
.defMemSns .profile-follow {
  justify-content: center;
}
.defSemPrice .defCouPriTbl .defPagTbl td:first-child {
  width: 15em;
}

/* デフゼミ共通（2020/7/23追記） */
@media (min-width: 768px) {
.sp {
display: none;	
}
}

.btn-flex {
display: flex;
justify-content: space-between;
}
#defsapo .btn-flex a.btn.btn-lg {
margin-left: 0;
margin-right: 0;
width: 47%;
}

.defConItem {
margin-top: 0.8em;
}
.defBgPaleYellow {
background-color: #fffef1;
}
.defBgPaleGreen {
background-color: #F3FAFA;
}
.defBgBeige {
background-color: #F8F7F0;
}
.defFontOrange {
color: #F08A12;
}
.defFontUnderlineYellow {
background: linear-gradient(transparent 60%, #FEF175 0%);
}
.invihind {
opacity: 0.6;
pointer-events: none;
cursor: none;
}

.defSemIntImg {
margin-top: -4.5em;
margin-left: auto;
margin-right: auto;
position: relative;
z-index: 1;
max-width: 500px;
}
.defSemVoice {
font-size: 0.9em;
line-height: 1.4;
margin-left: auto;
margin-right: auto;
max-width: 600px;
}
.defSemVoice dt {
margin-bottom: 0.25em;
}
.defSemVoice dd+dt {
margin-top: 1.5em;
}
.defSemCVR {
margin-left: auto;
margin-right: auto;
margin-bottom: 40px;
max-width: 600px;
}
.defSemCVR a {
display: block;
animation: fuwafuwa 2.5s infinite;
margin-bottom: 0;
cursor: pointer;
}
@keyframes fuwafuwa {
  0% { transform:translateY(0px); }
  50% { transform:translateY(-15px); }
  100% { transform:translateY(0px); }
}
.defSemCVR small {
font-size: 0.7em;
display: block;
text-align: right;
}

/* デフゼミ一覧（2020/7/22追記） */
.defSemBrand {
margin-bottom: 3.5em;
}
.defSemBtnlist {
margin-top: 2em;
}
.defSemBtnlist li+li {
margin-top: 1.5em;
}
.defSemFtop .defCont {
max-width: 600px;
}
.defSemFtop .defSemBtnlist {
margin-bottom: 4em;
}
#defsapo a.btn.btn-lg.btn-defSemCourse {
font-weight: bold;
line-height: 1.1em;
padding: 0.8em;
padding-bottom: 0.6em;
}
.defSemIntro .defCont {
max-width: 600px;
margin-left: auto;
margin-left: auto;
}
.defSemIntArrow {
background: url(../img/defsemi_202007/img_defsemi_arrow-min.png) no-repeat center 0;
background-size: 190px;
padding-top: 6px;
padding-left: 10px;
padding-bottom: 20px;
text-align: center;
}
.defSemIntCopy {
font-size: 0.9em;
position: relative;
text-align: center;
z-index: 100;
}
.defSemIntCopy strong {
font-size: 1.3em;
}

.btn-defSemCourse small {
font-size: 0.7em;
}
.defSemCouCard {
border-radius: 20px;
box-shadow: 0 3px 10px rgba(64,76,66,0.18);
width: 85%;
max-width: 350px;
margin-left: auto;
margin-right: auto;
}
.defSemCouCard+.defSemCouCard {
margin-top: 1.6em;
}
#defsapo .defSemCouCard a {
display: block;
text-decoration: none;
width: 100%;
height: 100%;
}
#defsapo .defSemCouCard a:hover {
opacity: 0.6;	
}
.defSemCouCarCatch {
background-image: url(../img/defsemi_202007/img_defsemi_04-min.png);
background-repeat: no-repeat;
background-position: 80% center;
background-size: 110px;
min-height: 150px;
display: flex;
flex-flow: wrap;
align-items: center;
}
.defSemCouCarCatch.kids {
background-image: url(../img/defsemi_202007/img_defsemi_05-min.png);
}
.defSemCouCarCatch.junior {
background-image: url(../img/defsemi_202007/img_defsemi_06-min.png);
}
.defSemCouCarCatch p {
color: #4d4c4a;
font-size: 1.4em;
font-weight: bold;
line-height: 1.1em;
padding-left: 40px;
margin-bottom: 0;
}
.defSemCouCarCatch p small {
font-size: 0.68em;
}
.defSemCouCarText {
padding-top: 20px;
padding-left: 25px;
padding-right: 25px;
padding-bottom: 25px;
}
.defSemCouCarText p {
color: #4d4c4a;
font-size: 0.9em;
margin-bottom: 0.9em;
}
#defsapo .defSemCouCard span.btn.btn-lg {
border: 1px solid #2D9E9C;
color: #2D9E9C;
font-size: 0.9em;
padding: 0.8em;
width: 100%;
}
#defsapo .defSemCouCard span.btn.btn-lg:hover {
background-color: #2D9E9C;
color: #FFFFFF;
}
@media (min-width: 768px) {
.defSemCouCardCtr {
display: flex;
justify-content: space-between;
}
.defSemCouCard {
max-width: 250px;
}
.defSemCouCard+.defSemCouCard {
margin-top: 0;
}
.defSemCouCarCatch {
background-position: 85% center;
background-size: 100px;
}
.defSemCouCarCatch p {
font-size: 1.2em;
padding-left: 25px;
}
.defSemCouCarText {
font-size: 0.9em;
line-height: 1.4;
padding-top: 15px;
padding-left: 20px;
padding-right: 20px;
padding-bottom: 20px;
}
.defSemCouCarText p {
display: flex;
align-items: stretch;
flex-wrap: wrap;
height: 100%;
}
}

.defSemFtoLink {
background: #FFFFFF;
border: 1px solid #CCCCCC;
padding: 25px;
margin-left: auto;
margin-right: auto;
margin-bottom: 40px;
}
#defsapo .defSemFtoLink a {
text-decoration: none;
display: block;
width: height;
height: 100%;
}
.defSemFtoLink h3 {
color: #4d4c4a;
display: flex;
justify-content: space-between;
margin-bottom: 0;
}
.defSemFtoLink h3:after {
content: '＞';
color: #2D9E9C;
transform: scaleX(.5) scaleX(.8) translateY(-8px);
font-size: 1.4em;
display: block;
}
.defSemFtoLink p {
color: #4d4c4a;
font-size: 0.9em;
line-height: 1.4;
margin-bottom: 0;
}
.defSemFtoFaq {
margin-bottom: 4em;
}
.defSemFtoFaqList li {
border-bottom: 1px solid #cccccc;
}
.defSemFtoFaqList label {
cursor: pointer;
}
.defSemFtoFaqList .acd-content p {
padding-bottom: 10px;
}
.defSemFtoFaqList li+li {
margin-top: 1em;
}
.defSemFtoFaqLink {
font-size: 0.9em;
text-align: right;
}

.acd-check {
display: none;
}
.acd-label {
display: flex;
align-items: center;
margin-bottom: 0;
}
.acd-label p {
font-size: 0.9em;
line-height: 1.4;
margin-bottom: 0;
width: calc(100% - 20px);
}
.acd-label:after{
content: '＞';
transform: rotate(90deg) scaleX(0.5);
font-size: 1.4em;			
display: block;
}
.acd-content {
display: block;
height: 0;
opacity: 0;
transition: .5s;
visibility: hidden;
}
.acd-content p {
font-size: 0.9em;
line-height: 1.4;
margin-bottom: 0;
}
.acd-check:checked + .acd-label:after {
content: '＞';
font-size: 1.4em;
transform: rotate(270deg) scaleX(0.5);
}
.acd-check:checked + .acd-label + .acd-content {
padding-top: 10px;
height: auto;
max-height: 200px;
opacity: 1;
visibility: visible;
}


/* デフゼミ詳細共通（7/23追記） */
.defSemDtlPageTit {
display: flex;
align-items: center;
}
.defSemDtlPageTitCont {
background-image: url(../img/defsemi_202007/img_defsemi_06-min.png);
background-repeat: no-repeat;
background-position: 90% center;
background-size: 120px;
display: flex;
flex-flow: wrap;
align-items: center;
margin-left: auto;
margin-right: auto;
width: 90%;
max-width: 480px;
min-height: 150px;
}
.defSemDtlPageTit div {
padding-left: 20px;
}
.defSemDtlPageTit h1 {
color: #2D9E9C;
font-size: 1.55em;
}
.defSemDtlPageTit p {
font-size: 0.85em;
}
.defCont.defSemDtlIntro {
padding-top: 2em;
}
.defSemDtlIntCopy {
margin-bottom: 2.5em;
text-align: center;
}
.defSemDtlIntro .defSemCVR {
margin-bottom: 0;
}
.defSemDtlSlide .defCont {
padding-bottom: 5em;
}
.defSemDtlPoint .defCont {
padding-bottom: 1em;
}
.defSemDtlPoiList {
counter-reset: my-counter;
list-style: none;
padding: 0;
margin-left: auto;
margin-right: auto;
margin-bottom: 3em;
max-width: 600px;
}
.defSemDtlPoiList li+li {
margin-top: 1.5em;
}
.defSemDtlPoiLisTit {
border-bottom: 1px solid #DBDAD0;
font-size: 1.1em;
font-weight: bold;
padding-left: 2em;
padding-bottom: 0.25em;
position: relative;
margin-bottom: 0.5em;
}
.defSemDtlPoiLisTit:before {
content: counter(my-counter);
counter-increment: my-counter;
background-image: url(../img/defsemi_junior/img_defsemi_j_mark-min.png);
background-repeat: no-repeat;
background-position: center;
color: #2D9E9C;
display: block;
float: left;
font-size: 1em;
line-height: 1.7em;
margin-left: -2em;
text-align: center;
height: 1.7em;
width: 1.7em;
border-radius: 50%;
}
.defSemDtlPoiList p {
font-size: 0.95em;
line-height: 1.4;
}
.defSemDtlPoiFinding {
font-size: 0.95em;
text-align: center;
position: relative;
z-index: 100;
}
.defSemDtlPoiFinding strong {
font-size: 1.3em;
}
.defSemRecItem h3 {
font-size: 1.2em;
line-height: 1.4;
}
.defSemDtlGreeting p {
font-size: 0.9em;
}
.defSemDtlGreImg {
float: left;
margin-right: 15px;
margin-bottom: 20px;
width: 100px;
}
.defSemDtlGreeting .accordion-box {
position: relative;
}
.defSemDtlGreeting .accordion-box label {
height: 140px;
cursor: pointer;
text-align: center;
font-size: 12px;
position: absolute;
margin-bottom: 0;
bottom: 0;
width: 100%;
background: linear-gradient(to bottom, rgba(243, 250, 250, 0) 0%, rgba(243, 250, 250, 1) 70%);
}
.defSemDtlGreeting .accordion-box input:checked + label {
background: inherit;
}
.defSemDtlGreeting .accordion-box label:before {
content: "続きをよむ";
letter-spacing: .05em;
line-height: 2.5rem;
position: absolute;
bottom: 20px;
left: 50%;
transform: translate(-50%, 0);
border: 1px solid #2D9E9C;
color: #2D9E9C;
width: 18.75rem;
border-radius: 20px;
}
.defSemDtlGreeting .accordion-box label:after {
content: "＞";
color: #2D9E9C;
font-size: 1.4em;
font-weight: bold;
position: absolute;
bottom: 30px;
transform: rotate(90deg) scaleX(.5) translateY(-40px);
z-index: 1;
border-radius: 100%;
width: 20px;
height: 20px;
line-height: 20px;
}
.defSemDtlGreeting .accordion-box input {
display: none;
}
.defSemDtlGreeting .accordion-box .accordion-container {
overflow: hidden;
height: 270px;
transition: all 0.1s;
}
.defSemDtlGreeting .accordion-box input:checked + label:before {
content: "閉じる";
}
.defSemDtlGreeting .accordion-box input:checked + label:after {
bottom: 31px;
transform: rotate(270deg) scaleX(.5) translateY(22px);
}
.defSemDtlGreeting .accordion-box input:checked ~ .accordion-container {
height: auto;
padding-bottom: 80px;
transition: all 0.1s;
}
@media (min-width: 768px) {
.defSemDtlGreeting .accordion-box label {
background: none;
}
.defSemDtlGreeting .accordion-box label:before {
content: "閉じる";
}
.defSemDtlGreeting .accordion-box label:after {
bottom: 31px;
transform: rotate(270deg) scaleX(.5) translateY(22px);
}
.defSemDtlGreeting .accordion-box .accordion-container {
height: auto;
padding-bottom: 80px;	
}
.defSemDtlGreeting .accordion-box input:checked + label {
background: linear-gradient(to bottom, rgba(243, 250, 250, 0) 0%, rgba(243, 250, 250, 1) 70%);
}
.defSemDtlGreeting .accordion-box input:checked + label:before {
content: "続きを見る";
}
.defSemDtlGreeting .accordion-box input:checked + label:after {
bottom: 31px;
transform: rotate(90deg) scaleX(.5) translateY(-40px);
}
.defSemDtlGreeting .accordion-box input:checked ~ .accordion-container {
height: 270px;
}
}

.defSemDtlService {
margin-left: auto;
margin-right: auto;
max-width: 600px;
}
.defSemDtlSerPrice {
display: flex;
justify-content: space-between;
font-size: 1.1em;
font-weight: bold;
margin-bottom: 0.5em;
}
.defSemDtlSerIntro {
margin-bottom: 1em;
}
.defSemDtlSerIntro p {
font-size: 0.85em;
line-height: 1.4;
margin-bottom: 0.4em;
}
.defSemDtlSerTable {
border: 2px solid #2D9E9C;
padding: 15px;
}
.defSemDtlSerTabList {
margin-top: 0;
margin-bottom: 0;
}
.defSemDtlSerTabList div {
border-bottom: 1px solid #DBDAD0;
display: flex;
justify-content: space-between;
font-size: 0.8em;
line-height: 1.4;
}
.defSemDtlSerTabList div+div {
margin-top: 1.1em;
}
.defSemDtlSerTabList dt {
font-weight: bold;
padding-bottom: 0.3em;
}
.defSemDtlSerTabList dd {
padding-bottom: 0.3em;
}
.defSemDtlSerTabList div.defSemDtlSerTabLisOutline {
display: block;
}
.defSemDtlSerTabLisOutline dt {
padding-bottom: 0.5em;
}

/* デフゼミ詳細キッズ（2020/7/23追記） */
.defSemDtlKids .defSemDtlPageTitCont {
background-image: url(../img/defsemi_202007/img_defsemi_05-min.png);
}

/* デフゼミ詳細ベビー（2020/10/7追記） */
.defSemDtlBaby .sp {
display: block;
}
.defSemDtlBaby .pc {
display: none;
}
.defSemDtlBaby .defSemDtlPageTitCont {
background-image: url(../img/defsemi_202007/img_defsemi_04-min.png);
}
.defSemDtlBaby .defSemDtlPoiFinding strong {
font-size: 1.2em;
}


@media (min-width: 768px) {
.defSemDtlBaby .sp {
display: none;
}
.defSemDtlBaby .pc {
display: block;
}
}


/* デフゼミ　受講システム（2020/7/23追記） */
.defSystem .defCont {
padding-top: 2em;
padding-bottom: 2em;
margin-left: auto;
margin-right: auto;
max-width: 600px;
}
.defSystem p {
line-height: 1.5;
margin-bottom: 0.5em;
}
.defSysFlow {
margin-top: 1em;
margin-bottom: 2em;
}
.defSysFloCont {
display: flex;
justify-content: space-between;
}
.defSysFloImg {
margin-right: 10px;
margin-bottom: 0;
}
.defSysFloImg img {
max-width: 124px;
min-width: 124px;
}
.defSysFloList {
margin-top: 2px;
margin-bottom: 0;
}
.defSysFloList li {
font-weight: bold;
line-height: 1.2;
height: 68.5px;
}
.defSysFloList li small {
font-weight: normal;
font-size: 0.8em;
}
.defSysFloList li p {
font-weight: normal;
font-size: 0.95em;
line-height: 1.4;
margin-top: 0.75em;
}
@media (min-width: 768px) {
.defSysFloImg img {
max-width: 248px;
min-width: 248px;
}
.defSysFloList {
margin-top: 6px;
}
.defSysFloList li {
height: 127px;
}
}


/* お客様の声 （2020/8/10追記） */
.defVoice .defCont {
padding-top: 2em;
}
.defVoiParts h3 {
margin-bottom: 0.25em;
}
.defVoiParts .accordion-box {
position: relative;
}
.defVoiParts .accordion-box label {
height: 150px;
cursor: pointer;
text-align: center;
font-size: 12px;
position: absolute;
margin-bottom: 0;
bottom: 0;
width: 100%;
background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 70%);
}
.defVoiParts .accordion-box input:checked + label {
background: inherit;
}
.defVoiParts .accordion-box label:before {
content: "続きをよむ";
letter-spacing: .05em;
line-height: 2.5rem;
position: absolute;
bottom: 20px;
left: 50%;
transform: translate(-50%, 0);
border: 1px solid #2D9E9C;
color: #2D9E9C;
width: 100%;
max-width: 400px;
border-radius: 20px;
}
.defVoiParts .accordion-box label:after {
content: "＞";
	color: #2d9e9c;
	font-size: 1.4em;
	font-weight: 700;
	position: absolute;
	bottom: 30px;
	transform: rotate(90deg) scaleX(.5) translateY(-40px);
	z-index: 1;
	border-radius: 100%;
	width: 20px;
	height: 20px;
	line-height: 20px;
}
.defVoiParts .accordion-box input {
display: none;
}
.defVoiParts .accordion-box .accordion-container {
overflow: hidden;
height: 220px;
transition: all 0.1s;
}
.defVoiParts .accordion-box input:checked + label:before {
content: "閉じる";
}
.defVoiParts .accordion-box input:checked + label:after {
    bottom: 31px;
    transform: rotate(270deg) scaleX(.5) translateY(22px);
}
.defVoiParts .accordion-box input:checked ~ .accordion-container {
height: auto;
padding-bottom: 80px;
transition: all 0.1s;
}
	
.defVoiParts {
background: #ffffff;
border-radius: 20px;
box-shadow: 0 3px 10px rgba(64,76,66,.18);
padding: 20px;
position: relative;
width: 90%;
max-width: 800px;
margin-left: auto;
margin-right: auto;
}
.defVoiParts + .defVoiParts {
margin-top: 30px;
}
.defVoiParImg {
margin-top: -10px;
}
.defVoiParName {
font-size: 0.8em;
opacity: 0.8;
margin-top: 3px;
}
.defVoiParTxt {
font-size: 0.9em;
line-height: 1.5;
}

@media (min-width: 768px) {
.defVoice .defCont {
display: flex;
flex-wrap: wrap;
align-items: baseline;
max-width: 800px;
}
.defVoiParts {
width: 46%;
}
}

/* 価格表 （2020/8/10追記） */
.defPrice .defCont {
padding-top: 3em;
}
.defPriParts {
background: #ffffff;
border-radius: 15px;
box-shadow: 0 3px 10px rgba(64,76,66,.18);
padding: 20px;
width: 90%;
max-width: 800px;
margin-left: auto;
margin-right: auto;
}
.defPriParts + .defPriParts {
margin-top: 30px;
}
.defPriParTit {
border-bottom: 1px solid #DBDAD0;
font-size: 1.1em;
font-weight: bold;
padding-bottom: 3px;
margin-bottom: 10px;
}
.defPriParSub {
opacity: 0.8;
margin-bottom: 0;
}
.defPriParPrice {
font-size: 1.25em;
font-weight: bold;
color: #2d9e9c;
margin-bottom: 0;
text-align: center;
}
.defPriParPrice strong {
font-size: 1.5em;
}

.defPriParAccCheckbox {
display: none;
}
.defPriParAccLabel {
display: block;
position: relative;
margin-bottom: 0;
}
.defPriParAccLabel:after{
content: '＞';
transform: rotate(90deg) scaleX(.5);
font-size: 1.4em;
display: block;
position: absolute;
top: -12px;
right: 0;
padding: 10px;
}
.defPriParAccCont {
display: block;
height: 0;
opacity: 0;
transition: .5s;
visibility: hidden;
}
.defPriParAccCheckbox:checked + .defPriParAccLabel:after {
content: '＞';
font-size: 1.4em;
transform: rotate(270deg) scaleX(.5);
}
.defPriParAccCheckbox:checked + .defPriParAccLabel + .defPriParAccCont {
padding-top: 10px;
height: auto;
opacity: 1;
visibility: visible;
}

.defPriParTable {
background: #F8F8F8;
padding: 15px;
}
.defPriParTabList {
margin-top: 0;
margin-bottom: 0;
}
.defPriParTabList div {
border-bottom: 1px solid #DBDAD0;
display: flex;
justify-content: space-between;
font-size: 0.8em;
line-height: 1.4;
}
.defPriParTabList div+div {
margin-top: 1.1em;
}
.defPriParTabList dt {
font-weight: bold;
padding-bottom: 0.3em;
}
.defPriParTabList dd {
padding-bottom: 0.3em;
}
.defPriParTabList div.defPriParTabLisOutline {
display: block;
}
.defPriParTabLisOutline dt {
padding-bottom: 0.5em;
}


/* 難聴の基礎知識 */
.defBasic {
  background-color: #f3f1ed;
}
/* 動的部分はfooter.phpに記載 */
.defBasic h1 {
  margin-top: 0;
  text-align: center;
  margin-bottom: 1em;
}
.defBasic h1.pc img {
width: 100%;
height: auto;
}
.defBasIntro {
  margin-bottom: 4em;
}

 /* 基礎知識　詳細 */
#defBasDtl #main {
  width: 90%;
  max-width: 700px;
  float: none;
  margin-left: auto;
  margin-right: auto;
}
#defBasic .sponsored {
  display: none;
}

/* 運営メンバー */
.defMemImg {
	margin: 0 auto 1em;
	width: 60%;
	max-width: 300px;
	border-radius: 50%;
	overflow: hidden;
}
.defMemContent {
	margin: 0 auto 3em;
	max-width: 500px;
}
.defMemContent h2 {
	line-height: 1.3;
}
.defMemTag {
	border: 1px solid #2d9e9c;
	color: #2d9e9c;
	font-size: 80%;
	padding: 0.25em 1em;
}
.defMemContent .accordion label {
	border-color: #2d9e9c;
	border-radius: 40px;
	color: #2d9e9c;
}
.defMemContent dt {
	margin: 0em;
	margin-bottom: 0.5em;
}

/* 登壇・講演告知 */
.defEvent .defIntro {
margin-bottom: 2em;
}
.defEveList {
padding: 1em;
background: #fefcf7;
margin-top: 1em;
}
.defEveList dl {
padding: 0;
line-height: 1.4;
}
.defEveList dl div {
display: flex;
margin-top: 0.5em;
padding-bottom: 3px;
border-bottom: 1px solid #f5f5f5;
}
.defEveList dt {
width: 30%;
max-width: 110px;
}
.defEveList dd {
width: 70%;
}	
	

/* デフサポ会員 */
.profile-follow {
  display: flex; }
  @media (max-width: 767px) {
    .profile-follow {
      justify-content: center;
      margin-top: 20px; } }
  @media (min-width: 768px) {
    .profile-follow {
      justify-content: flex-end; } }
  .profile-follow a {
    -webkit-transition: color 0.4s ease, background 0.4s ease, transform 0.4s ease, opacity 0.4s ease, border 0.4s ease, padding 0.4s ease, left 0.4s ease, box-shadow 0.4s ease;
    transition: color 0.4s ease, background 0.4s ease, transform 0.4s ease, opacity 0.4s ease, border 0.4s ease, padding 0.4s ease, left 0.4s ease, box-shadow 0.4s ease;
    display: block;
    color: #2d9e9c;
    margin: 0 5px;
    border: 1px solid #2d9e9c;
    overflow: hidden;
    line-height: 0 !important; }
    @media (max-width: 767px) {
      .profile-follow a {
        font-size: 13px;
        padding: 8px 10px;
        width: 34px;
        height: 34px;
        border-radius: 20px; } }
    @media (min-width: 768px) {
      .profile-follow a {
        font-size: 11px;
        padding: 6px 6px;
        width: 28px;
        height: 28px;
        border-radius: 14px; } }
  .profile-follow a:hover {
    color: #f8b500 !important;
    -webkit-transform: scale(1.1);
    transform: scale(1.1); }
  @media (max-width: 767px) {
    .profile-follow .twitter-sns a {
      padding-left: 8px; } }
  @media (min-width: 768px) {
    .profile-follow .twitter-sns a {
      padding-left: 6px; } }
  @media (max-width: 767px) {
    .profile-follow .facebook-sns a {
      padding-left: 11px; } }
  @media (min-width: 768px) {
    .profile-follow .facebook-sns a {
      padding-left: 8px; } }
  @media (max-width: 767px) {
    .profile-follow .instagram-sns a {
      padding-left: 8px; } }
  @media (min-width: 768px) {
    .profile-follow .instagram-sns a {
      padding-left: 7px; } }
  @media (max-width: 767px) {
    .profile-follow .youtube-sns a {
      padding-left: 6px; } }
  @media (min-width: 768px) {
    .profile-follow .youtube-sns a {
      padding-left: 5px; } }
  @media (max-width: 767px) {
    .profile-follow .contact-sns a {
      padding-left: 7px; } }
  @media (min-width: 768px) {
    .profile-follow .contact-sns a {
      padding-top: 5px;
      padding-left: 6px; } }
  .profile-follow .contact-sns a svg {
    width: 100%; }
  @media (max-width: 767px) {
    .profile-follow .line-sns a {
      padding-top: 12px;
      padding-left: 6px; } }
  @media (min-width: 768px) {
    .profile-follow .line-sns a {
      padding-top: 10px;
      padding-left: 5px; } }
  .profile-follow .line-sns a svg {
    height: auto;
    -webkit-transition: color 0.4s ease, background 0.4s ease, transform 0.4s ease, opacity 0.4s ease, border 0.4s ease, padding 0.4s ease, left 0.4s ease, box-shadow 0.4s ease;
    transition: color 0.4s ease, background 0.4s ease, transform 0.4s ease, opacity 0.4s ease, border 0.4s ease, padding 0.4s ease, left 0.4s ease, box-shadow 0.4s ease; }
    @media (max-width: 767px) {
      .profile-follow .line-sns a svg {
        width: 20px; } }
    @media (min-width: 768px) {
      .profile-follow .line-sns a svg {
        width: 16px; } }
  .profile-follow .line-sns a:hover svg {
    fill: #f8b500 !important; }

@media (min-width: 768px) {
  .profile-follow.center-pos {
    justify-content: center; } }
/* ▲デフサポ会員 */    


@media (max-width: 767px) {
  .defTopBlog .card-deck {
      -ms-flex-flow: column;
      flex-flow: column;
    }
  }
  @media (min-width: 768px) {
  .btn-lg {
    width: 80%;
  }
  #drawernav3 .hide,
  #drawernav3 .pc_hide {
    display: none!important;
  }
  #drawernav3 a,
  #drawernav3 a:hover {
    text-decoration: none;
  }
  #header {
    max-width: 1200px;
    display: flex;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
  }
  #header a {
    text-decoration: underline;
  }
  #header .menu-box {
    width: 100%!important;
    justify-content: center;
  }
  #header .hide,
  #headmenu {
    display: none!important;
  }

  .defSemBrand .sp,
  .carousel-item .sp {
    display: none;
  }
  .defSemBrand .pc,
  .carousel-item .pc {
    display: block;
  }
.defTopSlide img.pc {
max-width: 800px;
margin-left: auto;
margin-right: auto;	
}	  


  .defTopIntro {
    max-width: 700px;
    margin-top: 3em;
    margin-left: auto;
    margin-right: auto;
  }
  .defTopIntCont {
    display: flex;
  }
  .defTopIntTxt {
    width: 48%;
  }
  .defTopIntImg {
    width: 50%;
    max-width: 600px;
    margin-left: 2%;
  }
  .defTopPerIteArea {
    display: flex;
    justify-content: space-between;
  }
  .defTopPerItem {
    width: 49%;
  }
  .defTopPerIteText {
    width: 60%;
  }
  .defTopPerIteImg {
  width: 40%;
  }

  .defPerKigyoujyuku {
    padding: 4em;
  }
  .defPerMedList {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: baseline;
  }
  .defPerMedList li {
    width: 32%;
  }

  /* デフゼミ */
  .defSemBrand {
  padding-top: 0;
  }
  .defSemRecItem {
    display: flex;
    justify-content: space-between;
  }
  .defSemRecItem li {
    width: 32.5%;
  }
  .defSemRecItem h3 {
    text-align: center;
    padding-top: 70px;
    padding-left: 0;
    font-size: 1em;
    margin-bottom: 1em;
  }
  .defSemRecItem li h3:before {
    top: 10px;
    left: 90px;
  }

  .defSemDtl .defPagTbl {
    table-layout: fixed;
  }

  /* デフゼミ ジュニアコース（2020/2/29追記） */
  .defSemCrowdFundingItem {
    display: flex;
    justify-content: space-between;
  }
  .defSemCrowdFundingItem li {
    width: 32.5%;
  }
  .defSemCrowdFundingItem h3 {
    text-align: center;
    padding-top: 70px;
    padding-left: 0;
    font-size: 1em;
    margin-bottom: 1em;
  }
  .defSemCrowdFundingItem li h3:before {
    top: 10px;
    left: 90px;
  }

  /* カウンセリング */
  .defCouIntList {
    display: flex;
    justify-content: space-between;
  }
  .defCouIntList li {
    width: 45%;
  }

}

/*Bootstrap carousel Stype Override@author:Potter*/
.carousel-control-prev-icon,
.carousel-control-next-icon {
  height: 100px;
  width: 100px;
  outline: black;
  background-size: 100%, 100%;
  background-image: none!important;
}

.carousel-control-next-icon:after
{
  color:#2d9e9c;
  content: '>';
  font-size: 30px;
  border-radius:12px;
  background-color:#f3fafa;
}

.carousel-control-prev-icon:after {
  content: '<';
  color: #2d9e9c;
  font-size: 30px;
  border-radius:12px;
  background-color:#f3fafa;
}

#defsapo a.carousel-control-prev,
#defsapo a.carousel-control-next {
  text-decoration:none;
}

/*Contact Form 7 Style @author:Potter*/
/* Contact Form7 ラベル*/
.input-label{
  font-weight: bold;
}

/* Contact Form7 必須マーク*/
.must-mark{
	background: #53ba94; /*Custom*/
  color: #fff;
  font-size:12px;
  font-weight:bold;
	margin-right: 10px;
	padding: 6px 10px;
	border-radius: 3px;
}

/* Contact Form7 任意マーク */
.free-mark{
	background: #828282; /*Custom*/
	color: #fff;
  font-size:12px;
  font-weight:bold;
  margin-right: 10px;
	padding: 6px 10px;
	border-radius: 3px;
}

/* Contact Form7 入力欄 背景・枠線 */
input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea,
select.wpcf7-form-control.wpcf7-select {
  background-color: #eff1f5;
	border: 1px solid #cccccc; /*Custom*/
	border-radius: 3px;
	margin-right: 10px;
	margin-top: 10px;
	padding: 8px 15px;
  width: 100%;
}
textarea.wpcf7-form-control.wpcf7-textarea {
  height: 200px;
}

/* Contact Form7 必須入力欄 背景 */
input.wpcf7-form-control.wpcf7-validates-as-required,
select.wpcf7-form-control.wpcf7-validates-as-required,
textarea.wpcf7-form-control.wpcf7-validates-as-required {
	background-color:#f4f4f4;/* rgba(255, 255, 142, 0.46); /*Custom*/
}

/* Contact Form7 短縮入力欄 */
input.wpcf7-form-control.input-short,
select.wpcf7-form-control.input-short{
  display: inline-block;
  min-width:200px;
  width:25%;
  margin-left:10px;
}

/* Contact Form7 入力欄 */
.wpcf7-form-control input[type="radio"],
.wpcf7-form-control input[type="checkbox"]{
  display: inline-block;
  background-color:#f4f4f4; /*Custom*/
  color:#fff;
  height:1.4rem;
  width:1.4rem;
  -webkit-appearance: none;
  appearance: none;
}

.wpcf7-form-control input[type="radio"]:checked,
.wpcf7-form-control input[type="checkbox"]:checked{
  background-color:#4dc0b2;
}

.wpcf7-form-control input[type="radio"]:checked::before,
.wpcf7-form-control input[type="checkbox"]:checked::before{
  font-size: 1em;
	line-height: 1.4em;
	position: absolute;
	display: inline-block;
	width: 1em;
	height: 1em;
	content: '✔';
	text-align: center;
}

/* Contact Form7 送信ボタン */
input.wpcf7-submit {
	background: #2d9e9c; /*Custom*/
  border:0;
  border-radius:2rem;
  color: #fff;
  display: block;
	font-size: 1.1rem; /*Custom*/
	font-weight: 600;
  padding:1em;
  margin-left:auto;
  margin-right:auto;
  max-width: 600px;
  width: 100%;
}

input.wpcf7-submit:hover{
  background: #fff;
  border:1px solid #2d9e9c;
  color:#2d9e9c;
}

input.wpcf7-submit:focus{
  box-shadow:0 0 0 0.2rem #dcede9;
  outline:none;
}

/* エラーメッセージを見やすくする */
span.wpcf7-not-valid-tip,
.wpcf7-response-output.wpcf7-validation-errors {
	color: red;
	font-weight: 600;
}