@charset "UTF-8";
/* Scss Document */
/*下層ページ共通*/

article {
  margin-top: 160px;
}

section {
  width: 1000px;
  margin: 1em auto;
}

#title h1 {
    background: #2cdea7;
}

.left {
	text-align: left;
}

 /*矢印*/
.round_arrow {
  position: relative;
  padding-right: 40px;
}
 
.round_arrow::before { /* 背景の表示設定 */
  content: "";
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 3px;
  width: 23px; /* 横幅 */
  height: 23px; /* 高さ */
  border-radius: 50%; /* 角の丸み */
  background: #FFF;
}
 
.round_arrow::after { /* くの字の表示設定 */
  content: "";
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 10px;
  width: 10px;
  height: 10px;
  border-top: 3px solid #4682b4;
  border-right: 3px solid #4682b4;
  transform: rotate(45deg);
}

/*外国語コース 建設助成金*/
.portugal .sp-edu {
  background: #F09213;
}
.portugal .sp-red {
  background: #E06062;
}
.portugal .sp_green {
  background: #139D55;
}

.subsidy li:nth-last-child(-n+8) {
  background: #FF9DA0;
}
.subsidy li:last-child {
  background: #598DC7;
}

.preparation {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	padding: 10px;
	background: red;
}

/* 各種講習 */
#item {
  display: flex;
}
#item .item-photo {
	width: 50%;
}
#item .item-photo img {
	max-width: 100%;
    padding-right:1rem;
}
#item .item-copy {
  width: 50%;
  text-align: left;
}
#item .item-copy h2 {
  color: #00578E;
  border-bottom: 2px solid #00578E;
  display: inline-block;
    font-size: 1.9em;
}
#item .item-copy dl {
  /*display: flex;
    flex-wrap: wrap;
  align-content: center;
  margin: 1em auto;
  line-height: 1.2em;*/
}

#item .item-copy dl {
    display: flex;
 border: 1px solid #aaa;
    padding: 0.5em;
    margin: 1em auto;
}
#item .item-copy dt {
    width: 8rem;
    white-space: nowrap;
}
#item .item-copy li {
    list-style: disc;
    margin-left: 1.5rem;
}

#item .img-btn {
    margin-top: 1em;
}

.yellow-bg {
    background: lightyellow;
    padding: 1em;
    /*border: 1px solid #333;*/
    text-align: left;
}

.yellow-bg a:link, .yellow-bg a:visited {
    color: blue;
}

#schedule h2 {
  background: #00578E;
  color: #fff;
  margin: 1em auto;
}

#schedule li {
    margin-left: 1rem;
}
#schedule li::before {
    content: "■";
    margin-left: -1rem;
}

#schedule .gaku::before, #schedule .jitsu::before {
	content: "学 科";
	width: 50px;
	background: #ce3100;
	border-radius: 5px;
	color: #fff;
	padding: 0 0.5rem;
	display: block;
	white-space: nowrap;
	margin: 0 auto 5px;
	text-align: center;
}
#schedule .gaku, #schedule .jitsu, #schedule .gaku-jitsu {
    /*vertical-align: top;
    vertical-align: bottom;*/
}
#schedule .jitsu::before {
    content: "実 技";
    background: #2671aa;
   }

/*#schedule .gaku-jitsu::before {
    content: url(../../course/images/icon-gaku_jitsu.gif);
}*/

#schedule .gaku-jitsu {
     color: #fff;
    /*margin: 2px auto 5px;*/
    margin: 0 auto 5px;
    white-space: nowrap;
}
#schedule .gaku-jitsu::before {
    content: "学";
    background: #ce3100;
    border-radius: 5px 0 0 5px;
    color: #fff;
    padding: 0 0.5rem;


}

#schedule .gaku-jitsu::after {
    content: "実";
    background: #2671aa;
    border-radius: 0 5px 5px 0;
    color: #fff;
    padding: 0 0.5rem;

}


#schedule .space {
  background: #ccc;
}


#schedule table span {
  font-size: 1.7rem;
  font-weight: bold;
}
#schedule table th {
    font-size: 1.2em;
    padding: 0.5em;
    white-space: nowrap;
}
#schedule table td {
    font-size: 1.2em;
}
/*値段最後用
#schedule table td:last-of-type, #schedule table td:first-of-type {
    white-space: nowrap;
}
#schedule table td:last-of-type span {
    color: red;
    font-size: 2em;
    
}
*/



#schedule .scedule-portugal {
    font-size: 80%;
    overflow-x: auto;
}



/* ポルトガル語コース用開始 */
#schedule-p li {
    margin-left: 1rem;
}
#schedule-p li::before {
    content: "■";
    margin-left: -1rem;
}

#schedule-p .gaku::before, #schedule-p .jitsu::before {
  content: "学 科";
    background: #ce3100;
    border-radius: 5px;
    color: #fff;
    padding: 0 0.5rem;
    display: block;
    white-space: nowrap;
    margin-bottom: 5px;
    
}
#schedule-p .jitsu::before {
    content: "実 技";
    background: #2671aa;
}

#schedule-p .gaku-jitsu {
     color: #fff;
    /*margin: 2px auto 5px;*/
    margin: 0 auto 5px;
    white-space: nowrap;
}
#schedule-p .gaku-jitsu::before {
    content: "学";
    background: #ce3100;
    border-radius: 5px 0 0 5px;
    color: #fff;
    padding: 0 0.5rem;
}

#schedule-p .gaku-jitsu::after {
    content: "実";
    background: #2671aa;
    border-radius: 0 5px 5px 0;
    color: #fff;
    padding: 0 0.5rem;
}

#schedule-p .space {
  background: #ccc;
}

#schedule-p .red {
	font-weight: bold;
	color: red;
}


#schedule-p table span {
  font-size: 1.5rem;
  font-weight: bold;
}
#schedule-p table th {
    font-size: 0.9em;
    padding: 0.5em;
    white-space: nowrap;
}
#schedule-p table td {
    font-size: 1em;
}

#schedule-p p {
	text-align: left;
}

#schedule-p .scedule-portugal {
    font-size: 80%;
    overflow-x: auto;
}

#schedule-p .corusename {
	word-wrap: break-word;
	width: 300px;
}

#portugal-table {
    padding:0;
}
#portugal-table table {
    margin: -1px;
}
#portugal-table td {
	padding: 13px;
}

#portugal-table .textprice {
	width: 74px;
}

#portugal-table .price {
	color: red;
	font-weight: bold;
}


/* ポルトガル語コース用終了 */



#description u {
	text-decoration: none;
}

#description h3, #majico h3 {
    background: red;
    color: #fff;
    text-align: left;
    padding: 0.2em 1em;
    margin: 1em auto;
}

#description h4 {
    background: #ccc;
    border: 1px solid #333;
    text-align: left;
    padding: 0.2em 1em;
    margin: 2em auto 1em;
    font-weight: normal;
}
#description ol  {
	margin: 0;
	padding: 0
}
#description ol li  {
	list-style: none;
	margin: 0;
	margin-left: -10px;
	padding: 0;
	text-indent: -1.3em;
}

.hogogu_img {
	display: flex;
}
.hogogu_img p {
	width: 60%;
}
@media screen and (max-width: 600px) {
	.hogogu_img {
		display: block;
	}
	.hogogu_img p {
		width: 100%;
	}
}
@media screen and (max-width: 500px) {
	.description .type {
		font-size: 80%;
	}
	.description .type .web-yoyaku {
		padding: 0 10px 15px;
	}
	.description .type .web-yoyaku span {
		padding: 2px 5px;
	}
	.description .type .yellow-bg {
		font-size: 100%;
	}
	.description u {
		display: none;
	}
}

.recommend {
    display: inline-block;
    border: 5px solid #2671aa;
    margin: 2rem auto;
}
.recommend strong {
    color: red;
    font-size: 2.5rem;
}
.recommend-copy {
    display: inline-block;
    font-size: 1.5rem;
    background: red;
    color: #fff;
    padding: 0.5rem 1rem;
    border-radius: 20px;
}
.description .yellow-bg {
	font-size: 200%;
}

#description h5 {
    display:flex;
    font-weight: normal;
    text-align: left;
    font-size: 2rem;
    padding: 0.5rem 2rem;
    justify-content: space-between;
    align-items: center;
}
.yellow-bg strong {
    background: orange;
    padding: 0.2rem 2rem;
    margin-top: -2rem;
    font-size: 1.2rem;
    color: #fff;
    position: absolute;
}

#description i {
    cursor: pointer;
    text-decoration: underline;
    color: blue;
}
#description h5 p {
    text-align: left;
    margin-bottom: 0;
}

#description div {
    margin-bottom: 1em;
}
#description p {
    text-align: left;
}

#description ul {
    text-align: left;
    margin-left: 2em;
     line-height: 1.5em;
    margin-bottom: 1em;
}

#description ul li {
    list-style: disc;
}

#description ol {
    text-align: left;
    margin-left: 2em;
    line-height: 1.5em;
    margin-bottom: 1em;
}

#description .kansuji li {
    list-style-type: cjk-ideographic;
    margin-bottom: 1em;
}

#description .kansuji li::before {
    content: "：";
}

#description table {
    margin-bottom: 1em;
    margin: 0 auto;
}

#description table th {
    background: #ccc;
    color: #333;
    border: 1px solid #333;
}

#description table td {
    border: 1px solid #333;
}

#description table td:first-of-type {
    background: #ffe6e6;
}
#description table td:last-of-type {
    background: #fffabd;
}

#description .table-left td {
    text-align: left;
}

#description .coment {
    display: flex;
    flex-wrap: wrap;
}
#description .coment dt, #description .coment dd{
    width: 25%;
    text-align: left;
    margin-bottom: 2em;
}

#description .coment dd{
    text-align: center;

}
#description .coment tr {
    display: flex;
}
#description .coment td {
    width: calc(50%);
    margin: 0.5rem;
    padding: 0.5rem;
    vertical-align: top;
    text-align: left;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #ffe6e6;
    border-radius: 10px;
}
#description .coment td:last-of-type {
    background: #ffe6e6;
}
#description .coment td img {
    margin: 0 0.5rem;
}

#description .coment td p {
    float: left;
    height: auto;
}


#description .coment-center dt, #description .coment-center dd{
    width: calc(25% - 1rem);
    text-align: center;
    margin-bottom: 2em;
    border: 1px solid #333;
    border-radius: 10px;
    margin: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem;
}

#description .comentx2 dt, #description .comentx2 dd{
    width: 50%;
    text-align: center;
}

#description .coment p {
    font-weight: bold;
    color: #333;
    margin-bottom: 0;
}

/*#description .youzai {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    align-content: space-between;
    height: 110em;
}*/

#description .youzai li {
    width: calc(50% - 3em);
    border-top: 1px solid #333;
    border-left: 1px solid #333;
    padding: 0.2rem;
}

#description .youzai th, #description .youzai td:first-of-type,
#description .youzai td:last-of-type {
    background: none;
    vertical-align: top;
    text-align: left;
    padding: 0.5rem;
}

#description .youzai th {
    text-align: right;
    width: 5%;
}
#description .youzai th::after {
    content: ".";
}
#description .youzai td {
    width: 45%;
}

/* majico */
#majico {
    text-align: left;
}

#majico img {
    max-width: none;
}

#majico h4, #majico h5 {
    border: 1px solid #333;
    padding: 0.5em;
    margin-top: -1px;
    font-size: 1em;
    font-weight: normal;
}

#majico h5 {
    background: lightblue;
}

#majico a:link, #majico a:visited {
    color: blue;
    text-decoration: underline;
}

#majico .mj-box {
    border: 1px solid red;
    padding: 1em;
    margin-bottom: 2em;
}


#majico dl {
    display: flex;
    margin: 1em auto;
}

#majico .mj-pr {
    display: inline-block;
    background: yellow;
    padding: 0 0.2em;
    margin: 0 1em;
}

#flow dl {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
#flow dl .arrow {
  width: 100%;
  margin: 1em auto;
}
#flow dt {
  background: #00578E;
  color: #fff;
  width: 10em;
  display: flex;
  justify-content: center;
  align-items: center;
    font-size: 1.2em;
}
#flow dd {
  border: 1px solid #00578E;
  width: calc(100% - 12em);
  padding: 1em;
}

#flow dd img {
  max-width: 100%;
}
/*
#flow p {
  text-align: left;
  margin: 0 auto;
  width: 90%;
}
*/
#flow .flow-sub h3 {
  background: #00578E;
  color: #fff;
  width: 90%;
  margin: 0 auto;
}

#flow .flow-sub h4 {
    font-size: 1.5em;
    
}
#flow .flow-sub dl {
  width: 90%;
  margin: 1em auto;
  display: flex;
  flex-wrap: wrap;
}
#flow .flow-sub dt {
  flex-wrap: wrap;
  width: 6em;
  background: #fff;
  border: 1px solid #00578E;
  color: #00578E;
  padding: 0.5em 0;
  margin: 1em 0;
}
#flow .flow-sub dd {
  width: calc(100% - 8em);
  border: none;
  text-align: left;
  margin-left: 2em;
  padding: 1em 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
#flow .flow-sub p {
  width: 100%;
}
#flow .flow-sub span {
  font-size: 12px;
}

/*修正追加*/
.tel-reserve {
  width: 100%;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #00578E;
  margin: 0 auto;
  padding: 0.2em;
}
  .tel-reserve p {
    margin: 0.5em 0;
}
  .tel-reserve span {
    font-size: 30px;
    margin: 0 0.5em;
}
  .tel-reserve a {
    font-size: 3rem;
    text-decoration: none;
    font-weight: bold;
    color: #00578E;
}
#flow .tel-reserve img {
    margin: 0.2em 0.5em;
}
.tel-num {
    display: flex;
    align-items: center;
    background: #c7daec;
    border-radius: 50px;
    padding: 0.5em 2.5em;
    margin-left: 2em;
}
.tel-reserve_p p {
    display: flex;
    align-items: center;
}

 #flow .tel-reserve_time {
	font-size: 1.5em;
	margin: 1em auto;
	display: flex;
     width: 90%;
     justify-content: center;
}
#flow .tel-reserve_time a {
	color: #00578E;
	text-decoration: underline;
}
#flow .tel-reserve_time a:hover {
	color: #666;
	text-decoration: none;
}

 #flow .tel-reserve_time dt {
  flex-wrap: wrap;
  width: 8em;
  background: #fff;
  border: 1px solid #00578E;
  color: #00578E;
  padding: 0.5em 0;
  margin: 1em 0;
}
 #flow .tel-reserve_time dd {
  border: none;
  text-align: left;
  margin-left: 2em;
  padding: 1em 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.fax-attention {
  border: 2px solid #00578E;
    font-size: 1.5em;
  margin: 1em auto;
  color: #00578E; }


  .send-fax span {
    border-radius: 5px;
    background: red;
      padding: 0 0.5em;
      margin: 0 0.2em;
      color: #fff;
}

.tel-reserve_only {
    width: 100%;
    border: 1px solid #00578E;
    padding: 1em;
    margin: 2em auto;
}
.tel-reserve_only h4 {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #00578E;
    font-size: 1.5em;
    text-align: center;
}
.v-center {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

#flow .v-center img {
    margin: 0 0.2em 0 0;
}


.tel-reserve_only i {
    border-radius: 5px;
    background: #00578E;
      padding: 0 0.5em;
      margin: 0 0.2em;
      color: #fff;
}

.flow-sub table th {
    padding: 0.5em;
}

.reserve-fix {
    width: 100%;
    background: #c20813;
    letter-spacing: 0.5em;
    color: #fff;
    font-size: 1.5em;
    text-align: center;
    padding: 0.5em 0;
    margin-bottom: 3rem;
}
/*修正追加*/


/*ドローン教習*/

.h3 {
	font-size:12px
}

.condition {
	font-size:5px
}


#condition h2 {
	width:100%;
    background: #08488a;
    color: #fff;
    margin: 2rem auto;
    padding: 0.5rem 0;
}

article p.drone-fee {
    text-align: left;
    margin: 0 auto;
    width: 18rem;
}
	
.Idea {
	text-align : center ; 
	text-align : left ;
	margin: 15px;
	padding-top:15px;
	border: 2px solid #333;
	border-radius: 10px 0 10px 0; 
}

.touroku-list{
    width:100%;
}

.touroku-list th{
    padding:5px;
}

.touroku-list tr td:first-child{
    text-align: left;
}

.drone table {
    margin: 0 auto;
}
.drone table th {
    padding: 0.5rem 0.7rem;
}
.drone table td {
    text-align: left;
    text-align: center;
}

.drone table tr:nth-of-type(odd) {
    background: #dff1fb;
}

.item  {
  margin: 1000px ;
  width: 1em;
    
}

.item-photo {
	width: 1000px;
	width: 1em;


}


.txtBlue {
    color: cornflowerblue;
}


a.pdf-dl {
    color: #00578E;
}
.pdf-dl dl {
    width: 95%;
    margin: 0 auto;
    border: 3px solid #00578E;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #00578E;
    text-align: left;
    font-size: 24px;
    margin-bottom: 1em;
}
.pdf-dl dt {
    border: 1px solid #000;
    margin: 0.5em;
}
.pdf-dl dt img {
    width: 250px;
    max-width: none;
}
.pdf-dl dd p {
    font-size: 1rem;
    color: #000;
    margin-bottom: 0;
}
.pdf-dl dd:last-child {
    width: 10em;
    text-align: right;
    margin-left: auto;
    padding-right: 0.5em;
    white-space: nowrap;
}
.pdf-dl dd:last-child p {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
.pdf-dl dd:last-child span {
    font-size: 1.2rem;
    color: #00578E;
    margin-right: 0.2em;
}

/*ロープ高所作業特別教育*/
.about_rope {
    display: flex;
    justify-content: space-around;
}
#description table td.rope_table {
    background: #ffe6e6;
}


/* for smart phone & tablet*/
@media screen and (max-width: 768px) {
  /*course index*/
  #pc-menu {
    display: block;
  }

  .main-menu li {
    width: calc(100% / 4 - 6px);
  }

  /*<--course index*/
  section {
    width: 100%;
  }
  section img {
    max-width: 100%;
  }
    
    
  #schedule .sp-scroll,
  #schedule-p .sp-scroll {
    overflow-x: auto;
    /*white-space: nowrap;*/
  }
    
    /*#schedule .sp-scroll table::before {
    content: "※スクロールできます→";
  }*/
    
    #flow dt {
        width: 100%;
    }
    
    #flow dd {
        width: 100%;
    }
    .tel-reserve .txtBig img {
        width: 60%;
    }
    .tel-reserve a {
        font-size: 2rem;
    }
    
    #flow .tel-reserve_time {
        width: 100%;
        flex-wrap: nowrap;
    }
    #flow .flow-sub dl {
        width: 100%;
    }
    #flow .flow-sub dt {
        width: 8em;
    }
    
    
    .pdf-dl dl {
        font-size: 1.2rem;
    }
    .pdf-dl dd p {
        font-size: 1.2rem;
    }
    .pdf-dl dt img {
        width: 200px;
    }
    .pdf-dl dd {
        width: calc(100% - 200px - 10em);
    }
    
}
/* for smart phone */
@media screen and (max-width: 480px) {
  /*coursr index*/

  .tab-menu {
    /*flex-wrap: wrap;*/
  }
  .tab-menu li {
    width: 50%;
    height: 2em;
    border-radius: 5px 5px 0 0;
    padding: 5px 0;
    margin-bottom: 1px;
    box-shadow: 3px 0 3px 0 rgba(0, 0, 0, 0.3);
    /*&:nth-of-type(1){
    width: 94%;
    }
    &:nth-of-type(2){
    width: 96%;
    }
    &:nth-of-type(3){
    width: 98%;
    }*/
  }

  .main-menu li {
    width: calc(100% /2 - 6px);
      font-size: 0.9rem;
  }
    .main-menu span {
        font-size: 0.6rem;
    }
    
    .tab-menu .sp-none {
        display: none;
    }

  /*<--course index*/
  #item, #flow {
    flex-wrap: wrap;
  }
  #item .item-photo, #item .item-copy, #flow .item-photo, #flow .item-copy, #flow dt, #flow dd, .item-copy dl .item-photo, .item-copy dl {
    width: 100%;
  }
  #item img, #flow img, .item-copy dl img {
    max-width: 100%;
  }
#item .item-photo img {
    padding-right:0;
}
    #item .item-copy h2 {
        font-size: 1.4rem;
    }
  .item-photo {
    text-align: center;
    margin-top: 1em;
  }

  .img-btn {
    text-align: center;
    margin: 0;
  }

  #schedule .sp-scroll,
  #schedule-p .sp-scroll {
    /*overflow-x:auto;
    white-space: nowrap;*/
      width: 100%;
  }
    
    
    
    #schedule .sp-scroll span,
	#schedule-p .sp-scroll span {
        display: inline-block;
    }
    
    /*#schedule .sp-scroll table::before {
    content: "※スクロールできます→";
  }*/
    #schedule .sp-scroll table th,
	#schedule-p .sp-scroll table th {
        width: 100px;
    }
    #schedule table td:nth-of-type(3) span {
        font-size: 0.8rem;
    }
    #schedule table tr td:nth-child(3) br:first-of-type,
#schedule table tr td:nth-child(3) br:last-of-type{
  display: block;
}

    
    
    #schedule .gaku::before, #schedule .jitsu::before {  
    padding: 0 0.2rem;
}
    #schedule .gaku-jitsu::after, #schedule .gaku-jitsu::before {
        padding: 0 0.3rem;
    }
    #schedule li::before {
        margin-left: 0;
    }
    #schedule li {
        margin-left: 0;
    }
    
    #description .coment dt, #description .coment dd, #description .comentx2 dt, #description .comentx2 dd {
        width: 100%;
    }
    #description .coment tr {
        flex-wrap: wrap;
    }
    #description .coment td {
        width: 100%;
        align-items: center;
    }

  #flow .flow-sub dd, #flow .flow-sub dt {
    width: 100%;
      margin: 0 auto;
  }
    
    /*修正追加*/
    .tel-reserve {
    width: 100%;
      flex-wrap: wrap;
    }
    .tel-reserve img {
      max-width: 90%;
    }
    .tel-reserve span {
      font-size: 20px;
      margin: 0 0.2em;
    }
    .tel-reserve a {
      font-size: 1.8em;
      white-space: nowrap;
    }
    
    #flow .tel-num img {
        width: 30px;
        max-width: none;
    }
    .tel-num {
        padding: 0.5em 1.5em;

    }

  .fax-attention {
    width: 100%;
    }

  .send-fax {
    flex-wrap: wrap; }
    .send-fax img {
      margin-bottom: 1em; }

  

  .license-list {
    flex-wrap: wrap; }

  ul {
    /*margin-bottom: 1em;*/
    }

  p {
    margin: 0 auto; }

  .last-license, .lunch {
    flex-wrap: wrap; }
    .last-license p, .lunch p {
      width: 100%;
      text-align: center; } 
    
  
    .license-list_type2 .last-license p {
        text-align: center;
    }
    
    .license-list_type2 p {
        text-align: left;
    }
    
    .lunch-txt span {
        margin: 0 auto;
    }
    
    .free li {
        width: 50%;
    }
    
    .license-list_type2:last-of-type {
        margin-bottom: 0;
        padding: 0;
    }
    
    .tel-reserve_only h4 {
        font-size: 1.2em;
    }
    #flow .tel-reserve_time {
        font-size: 1em;
    }
    #flow .tel-reserve_time dd {
        margin-left: 1em;
    }
    .recommend h5 {
        flex-wrap: wrap;
    }
    
    #description .youzai tr {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
    }
    #description .youzai th {
        width: 3rem;
        border-right: none;
        border-bottom: none;
    }
    #description .youzai td {
        width: calc(100% - 3rem);
        border-bottom: none;
    }
    #description table.youzai {
        border-bottom: 1px solid #333;
    }
    
    
    .pdf-dl dl {
        width: 100%;
        flex-wrap: wrap;
        padding-bottom: 0.5em;
    }
    .pdf-dl dl img {
        width: auto;
        max-width: 100%;
    }
    .pdf-dl dt {
        width: 100%;
        border: none;
        text-align: center;
    }
    .pdf-dl dd {
        width: 100%;
        margin: 0 0.5em;
    }
    .pdf-dl dd h3 {
        font-size: 1.2rem;
        background: #00578e;
        color: #fff;
        text-align: center;
    }
    .pdf-dl dd:last-child {
        width: 100%;
        display: flex;
        justify-content: center;
        margin: 0.5rem auto;
    }
    .pdf-dl dd:last-child img {
        margin-right: 0.5rem;
    }
    
    /*ロープ高所作業特別教育*/
.about_rope {
    flex-wrap: wrap;
    justify-content: center;
    
}
    .about_rope img {
        margin-bottom: 1rem;
    }
   
}



/* ========================================
   追加記述
   ======================================== */
 /* 講習タイトル */
#item .item-copy .ginou h2 {
	width: 100%;
	padding: 5px 10px;
	color: #FFF;
	background: #176bcc;
	border: none;
}
#item .item-copy .ginou p {
	padding: 5px;
	border: 1px solid #176bcc;
	text-align: center;
}

#item .item-copy .ginou-a h2 {
	width: 100%;
	padding: 5px 10px;
	color: #FFF;
	background: #018f3d;
	border: none;
}
#item .item-copy .ginou-a p {
	padding: 5px;
	border: 1px solid #018f3d;
	text-align: center;
}

 /* 講習説明 */
.item-copy #exposition {
	border: 1px solid #778899;
}
.item-copy #exposition h3 {
	padding: 10px;
	color: #FFF;
	background: #778899;
}
.item-copy #exposition p {
	padding: 10px 15px 0px;
}

 /* 追加アイコン */
#course-h-menu h2 {
	display: none;
}
#course-h-menu ul {
	position: relative;
	display: flex;
	flex-diretion: row;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 30px 0 40px;
}
#course-h-menu ul li {
	display: block;
	width: 180px;
	height: 130px;
	margin: 0;
	padding: 0;
	border: 2px solid #003881;
	border-radius: 8px;
}

#course-h-menu ul li a {
	display: block;
	height: 100%;
	padding: 10px;
	color: #004d83;
	text-decoration: none;
	font-size: 1.2rem;
	color: #FFF;
	background: #003881;
}
#course-h-menu ul li a:hover {
	background: #004d83;
}

#course-h-menu ul li .tel {
	width: 50px;
	height: 50px;
	margin: 0 auto 13px;
}

#course-h-menu ul li .pdf {
	width: 100px;
	margin: 5px auto 20px;
	padding: 5px 10px;
	font-size: 1em;
	color: #333;
	background: #fa9b31;
	border-radius: 4px;
}

#course-h-menu ul li .web {
	width: 100px;
	margin: 5px auto;
	padding: 5px 10px;
	font-size: 1em;
	color: #333;
	background: #A0D8EF;
	border-radius: 4px;
}

 /* ボップアップ */
#overlay,
#overlay1,
#overlay2,
#overlay3 {
	/*オーバーレイのCSS*/  
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100%;
	height:100%;
	display: none;
	background: rgba(0,0,0,0.6);
}
.flex {
	/*オーバーレイ内の要素を上下・左右中央揃え*/
	width: 100%;
	height:100%;
	display: flex;
	justify-content: center;
	align-items: center; 
}
.overlay-inner {
	padding: 20px 60px;
	background:#FFF;
	text-align:center;
}
.overlay-inner .y-title {
	margin-bottom: 10px;
	font-size: 1.4rem;
	font-weight: bold;
	text-align: center;
}

#close-btn {
	display:block;
	margin: 20px auto;
	padding: 10px 30px;
	background-color:#eee;
	border: none;
	cursor: pointer;
}
.is-hide {
	display:none;
}

.btn-tel{
	position: relative;
	display: block;
	width: 100%;
	margin: 0 auto 15px;
	padding: 5px 0;
	border-radius: 50px;
	color: #FFF;
	font-size: 1.6rem;
	font-weight: bold;
	text-align: center;
	background: #f75065;
	cursor: pointer;
}

/* 講習内容 */
.type {
	position: relative;
	margin: 20px 0 40px;
	border: 3px solid #0073a8;
	border-radius: 10px;
}
.type .wrap {
	padding: 20px;
}
.type h1 {
	width: 100%;
	margin: 0;
	padding: 6px 15px 15px;
	font-size: 2rem;
	font-weight: bold;
	background: #0073a8;
}
.type h1 b {
	font-size: 1.5rem;
	color: #0073a8;
	margin-right: 15px;
	padding: 0 15px;
	background: #FFF;
}
.type h3 {
	margin: 0 0 10px;
	padding: 10px;
	background: #FFF;
	border: 1px solid #004d83;
}

.type .tyousa {
	margin: 0 0 15px;
	padding: 10px;
	background: #FFF;
	border: 1px solid #004d83;
}
.type .tyousa h4 {
	width: 100%;
	margin: 0;
	padding: 6px 15px;
	font-size: 2rem;
	font-weight: bold;
	background: #0073a8;
	text-align: center;
}
.type .tyousa h4 a {
	color: #FFF;
	text-decoration: none;
}

.type .tyousa h4:hover {
	opacity: 0.7;
}

.type a {
	color: #049;
	text-decoration: underline;
}
.type a:hover {
	text-decoration: none;
}

.type p {
	text-align: left;
	
}
.type p b {
	font-size: 1.4rem;
	font-weight: bold;
	color: #004d83;
}

.type .red {
	font-weight: bold;
	color: #ba0714;
}

.type .sikaku {
	margin: -10px 0;
	padding: 10px;
	font-size: 0.8rem;
	text-align: left;
	background: #fff6f6;
}
.type .sikaku b {
	margin-left: 0;
	font-size: 1rem;
	font-weight: bold;
	color: #333;
}

.type table {
	width: 100%;
}
.type table .kakakuu {
	width: 300px;
}

.type .web-yoyaku {
	margin: 20px auto 0;
	padding: 15px 0 10px;
	background: #003881;
	border-radius: 15px;
	cursor: pointer;
}
.type .web-yoyaku:hover {
	opacity: 0.7;
}

.type .web-yoyaku h1 {
	position: relative;
	margin: 0 0 -10px;
	font-size: 1.8rem;
	text-align: center;
	background: none;
	color: #FFF;
}
.type .web-yoyaku p {
	margin: -5px;
	padding: 0;
	color: #FFF;
	text-align: center;
}
.type .web-yoyaku a {
	color: #FFF;
	text-decoration: none;
}

.type .web-yoyaku-none {
	margin: 20px auto 0;
	padding: 15px 0 10px;
	background: #ba0714;
	border-radius: 15px;
}
.type .web-yoyaku-none h1 {
	position: relative;
	margin: 0 0;
	font-size: 1.8rem;
	text-align: center;
	background: none;
	color: #FFF;
}


.type .btn-border {
	display: block;
	width: 100%;
	margin: 15px 0;
	padding: 15px 20px;
	text-align: center;
	border: 2px solid #004d83;
	color: #004d83;
	text-decoration: none;
	font-size: 1.4rem;
	font-weight: bold;
	border-radius: 4px;
	transition: .4s;
}

.type .btn-border:hover {
	background-color: #004d8;
	border-color: #004d83;
	color: #FFF;
}

.safety {
	border: 3px solid #018f3d !important;
}

.safety .a-title {
	background: #018f3d !important;
}
.safety .a-title b {
	color: #018f3d !important;
}

.safety .sp-scroll table th {
	background: #2dc52d !important;
	border-color: #FFF !important;
}
.safety .sp-scroll table td {
	border-color: #2dc52d !important;
}


@media screen and (max-width: 768px) {
	/* 講習内容 */
	.type {
		margin-bottom: 20px;
	}
	.type .wrap {
		padding: 10px;
	}
	.type h1 {
		margin: 0;
		padding: 10px;
		font-size: 1.4rem;
	}
	.type h1 b {
		display: block;
		margin: 0 0 5px;
		text-align: center;
	}
	.type h3 {
		border: none;
		border-bottom: 1px solid #004d83;
	}
	.type p {
		margin-left: 20px;
	}
	.type p b {
		margin-left: -20px;
		font-size: 1.2rem;
	}
	.type .web-yoyaku h1 {
		font-size: 1.4rem;
	}
	.type .web-yoyaku p {
		font-size: 1rem;
	}

	/* 講習タイトル */
	#item {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#item .item-photo {
		width: 100%;
		margin : 15px 0;
	}
	#item .item-copy {
		width: 100%;
	}
	#item .item-copy h2 {
		text-align: center;
	}
	#schedule .gaku::before, 
	#schedule .jitsu::before {
		width: 30px;
	}

	/* メニューボタン */
	#course-h-menu {
		margin: 30px 0 0;
	}
	#course-h-menu h2 {
		display: inline;
		color: #004c85;
	}
	#course-h-menu ul {
		display: block;
		margin: 10px 0 0;
	}
	#course-h-menu ul li {
		position: relative;
		width: 100%;
		height: 60px;
		margin-bottom: 20px;
	}
	#course-h-menu ul li a {
		display: block;
		width: 100%;
		padding: 13px 0 0;
	}
	#course-h-menu ul li a br {
		display: none;
	}
	#course-h-menu ul li::last-child {
		margin-bottom: 0;
	}
	#course-h-menu ul li .tel {
		position: absolute;
		width: 40px;
		height: 40px;
		top: 7px;
		left: 10px;
	}
	#course-h-menu ul li .pdf,
	#course-h-menu ul li .web {
		position: absolute;
		top: 9px;
		left: 10px;
		width: 40px;
		padding: 5px;
		font-size: 0.8rem;
	}

	 /* ボタン */
	.type .btn-border {
		width: 100%;
		margin: 10px 0 10px;
		display: block;
	}
}



#button {
	margin-top: 15px;
}

#button a {
	display: block;
	font-size: 1.2rem;
	padding: 20px;
	border: 1px solid #004d83;
	color: #004d83;
	border-radius: 50px;
}
#button a:hover {
	background: #004d83;
	color: #FFF;
}

#account {
}
#account li {
	display: inline;
	margin: 10px 20px;
}




/* ポップアップ表示 */
#popup,
#popup2 {
	display: none; 
}

.popup-open,
.popup-open2 {
	color: #003881;
	cursor: pointer;
	text-decoration: underline;
}

.popup-overlay,
.popup-overlay2 {
	display: none;
}

#popup:checked ~ .popup-overlay,
#popup2:checked ~ .popup-overlay2 {
	display: block;
	z-index: 99999;
	background-color: #00000070;
	position: fixed;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
}

.popup-window,
.popup-window2 {
 	width: 90vw;
	max-width: 560px;
	padding: 20px;
	background-color: #ffffff;
	border-radius: 6px;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.popup-text,
.popup-text2 {
	margin: 0;
	text-align: left;
}

.popup-text:not(:last-of-type) {
	margin-bottom: 1em
}

.popup-close,
.popup-close2 {
	cursor: pointer;
	position: absolute;
	top: -26px;
	right: 0;
}


/* ドローン 農薬散布コース */
.dron_sub {
	background: #009deb !important;
}
#worries {
	text-align: left;
}
#worries h4 {
	margin-top: 40px;
	color: #093f7f;
	font-size: 1.4em;
}

.merit_l {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	margin-bottom: 50px;
}

.merit_l .text {
	margin-right: 30px;
	text-align: justify;
}
.merit_l h3 {
	color: #dc302d;
}

.dron-flow {
	width: 760px;
	margin: 0 auto 20px;
	padding: 15px;
	color: #FFF;
	border-radius: 5px;
	background: #098bd1;
}
.dron-flow h3 {
	font-size: 1.6em;
}
.dron-flow p {
	margin: 0;
	padding: 0;
}

.dron-product {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	margin-bottom: 50px;
}
.dron-product .text {
	width: 670px;
	margin-left: 30px;
	text-align: justify;
}
.dron-product h3 {
	padding: 8px;
	color: #FFF;
	background: #009deb;
}
.dron-product h4 {
	margin-bottom: 6px;
	padding: 8px;
	background: #e6f0f9;
}
.dron-product .button {
	width: 300px;
	margin-top: 20px;
	padding: 8px;
	text-align: center;
	background: #ff8314;
	border-radius: 100vmax;
}
.dron-product .button:hover {
	opacity: 0.7;
}

.curriculum {
	width: 100%;
}
.curriculum .price {
	color: #dc302d;
	font-size: 1.2em;
	font-weight: bold;
}

.curriculum_info {
	margin: 15px 0 0;
	padding: 20px;
	text-align: left;
	background: #DDFFFF;
}
.curriculum_info  ol {
	margin-left: 18px;
}

.program_flow {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	text-align: left;
	border: 1px solid #CCC;
	margin-bottom: 20px;
}
.program_flow dt {
	width: 240px;
	padding: 15px;
	background: #e6f0f9;
}
.program_flow dd {
	width: 760px;
	padding: 15px;
}


/*Q&A*/
.cp_qa *, .cp_qa *:before, .cp_qa *:after {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.cp_qa {
	margin: -20px auto 0;
	background: # FFF;
	text-align: left;
}
.cp_qa input {
	display: none;
}

.cp_qa .cp_qain {
	position: relative;
	overflow-x: hidden;
	margin: 0 auto;
}
.cp_qa .cp_qain .cp_actab {
	padding: 10px 0 5px;
}
/* 質問 */
.cp_qa .cp_qain label {
	position: relative;
	display: flex;
	align-items: baseline;
	width: 100%;
	margin: 0;
	padding: 15px 0 0 15px;
	cursor: pointer;
	color: #FFF;
	background: #00a7ee;
	border: 1px solid #00a7ee;
	font-weight: bold;
}
/* ＋アイコン */
.cp_qa .cp_qain .cp_plus {
	font-size: 2em;
	line-height: 100%;
	position: absolute;
	right: 15px;
	z-index: 5;
	margin-top: 9px;
	color: #FFF;
	-webkit-transition: 0.2s ease;
	        transition: 0.2s ease;
}

/* 答え */
.cp_qa .cp_qain .cp_actab-content {
	position: relative;
	display: flex;
	align-items: baseline;
	overflow: hidden;
	height: 0;
	background: #e9f2fa;
	border: 1px solid #00a7ee;
	opacity: 0;
}
/* 質問を開いた時の仕様 */
.cp_qa .cp_qain .cp_actab input[type=checkbox]:checked ~ .cp_actab-content {
	height: auto;
	padding: 15px 15px 0 15px;
	opacity: 1;
}
/* 質問をクリックした時の▼アイコンの動き */
.cp_qa .cp_qain .cp_actab input[type=checkbox]:checked ~ .cp_plus {
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.cp_qa .cp_qain label::before {
	content: "Q.";
	display: inline-block;
}

.cp_qa .cp_qain label p {
	padding-left: 5px;
}

.cp_qa .cp_qain .cp_actab-content::before {
	content: "A.";
	display: inline-block;
}

.cp_qa .cp_qain .cp_actab-content p {
	padding-left: 5px;
}

.cp_qa .cp_qain .cp_actab-content a,
.cp_qa .cp_qain .cp_actab-content a:visited {
	color: #003878;
	text-decoration: underline;
}
.cp_qa .cp_qain .cp_actab-content a:hover {
	color: #003878;
	text-decoration: none;
}



@media screen and (max-width: 768px) {
	.merit_l {
		display: block;
	}
	.merit_l .text {
		margin-right: 0;
	}
	.merit_l img {
		width: 100%;
		height: auto;
	}
	.dron-flow {
		width: 100%;
	}
	.dron-product {
		display: block;
	}
	.dron-product .text {
		width: 100%;
		margin-left: 0;
		margin-top: 10px;
	}
	.dron-product img {
		width: 100%;
		height: auto;
	}
	.dron-product .button {
		width: auto;
		margin: 0 auto;
	}
}

@media screen and (max-width: 400px) {
	.program_flow {
		display: block;
	}
	.program_flow dt {
		width: 100%;
	}
	.program_flow dd {
		width: 100%;
	}
}