@charset "utf-8";
/* CSS Document */
html {
  scroll-padding-top: 0px;
}
@media screen and (max-width: 767px) {
  html {
    scroll-padding-top: 90px;
  }
}
@media (hover: none) {
  a:hover{
    opacity: 1;
  }
}
@media screen and (min-width: 756px ) {
    #item-list-page .item-side {
        top: 0px !important;
    }
}
@media screen and (min-width: 756px) {
    .item-side nav ul li a {
        font-size: 94% !important;
    }
}



@media screen and (min-width: 756px) {
    #item-list-page .item-wrap .text-wrap p.comment {
        text-align: left;
    }
}

@media screen and (min-width: 756px) {
    section p, section li {
        text-align: left;
    }
}
@media screen and (max-width: 756px) {
    section p, section li {
        text-align: left;
    }
}

.pc {
  display: block
}
.sp {
  display: none
}
@media screen and (max-width: 767px) {
  .pc {
    display: none
  }
  .sp {
    display: block
  }
}
@media screen and (max-width: 767px) {
  #contents {
    margin-top: 100px !important;
  }
}
.contentsWrap {
  width: 1200px;
  margin: 0 auto;
}
.category {
  padding-top: 15px !important;
}
@media screen and (max-width: 1560px) {
  .contentsWrap {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .category {
    padding-top: 0px !important;
  }
}
/*-------------------------------------------------
.category{}
---------------------------------------------------*/
.category #item-list-page #breadcrumb {
  background: #FFF !important;
  padding: 0px !important;
  margin-bottom: 57px !important;
}
@media screen and (max-width: 767px) {
  .category #item-list-page #breadcrumb {
    margin-bottom: 15px !important;
  }
}
/*-------------------------------------------------
.category{}
---------------------------------------------------*/
.category .mainimg {
  margin-bottom: 67px !important;
}
.category .mainimg img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .category .mainimg {
    margin-bottom: 30px !important;
  }
}
/*-------------------------------------------------
h1txt
---------------------------------------------------*/
.h1txt {
  font-size: 38px !important;
  font-weight: bold !important;
  margin-bottom: 32px !important;
	line-height: 1.4 !important;
}
@media screen and (max-width: 1280px) {
  .h1txt {
    line-height: 1.6 !important;
  }
}
@media screen and (max-width: 767px) {
  .h1txt {
    font-size: 23px !important;
    margin-bottom: 25px !important;
  }
}
/*-------------------------------------------------
readtxt
---------------------------------------------------*/
.readtxt {
  font-size: 14px !important;
  margin-bottom: 32px !important;
  line-height: 1.6;
}
@media screen and (max-width: 1280px) {}
@media screen and (max-width: 767px) {
  .h1txt {
    font-size: 23px !important;
    margin-bottom: 25px !important;
  }
}
/*-------------------------------------------------
Supervisor
---------------------------------------------------*/
.supervisor {
  padding: 34px 34px 24px 0;
  background: url("../images/category/ico_co01.png") no-repeat left top, url("../images/category/ico_co02.png") no-repeat right bottom, #f4f4f4;
  display: flex;
  width: 100%;
  margin: 0 auto 50px !important;
}
.supervisor .ttls {
  width: 30%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.supervisor .ttls .ttl {
  font-size: 32px !important;
  font-weight: bold !important;
  margin-bottom: 15px !important;
}
.supervisor .ttls .ttl::before {
  content: url("../images/category/ico_supervisor01.png");
  margin-right: 12px;
}
.supervisor .ttls .sub {
  font-size: 16px !important;
}
@media screen and (max-width: 767px) {
  .supervisor {
    padding: 20px 10px 20px 8px;
    background: url("../images/category/ico_co01.png") no-repeat left top/20px, url("../images/category/ico_co02.png") no-repeat right bottom/20px, #f4f4f4;
    flex-wrap: wrap;
    margin: 0 auto 15px !important;
  }
  .supervisor .ttls {
    width: 100%;
    margin-bottom: 15px
  }
  .supervisor .ttls .ttl {
    font-size: 23px !important;
    margin-bottom: 15px !important;
  }
  .supervisor .ttls .ttl::before {
    content: url("../images/category/ico_supervisor01sp.png");
    margin-right: 8px;
  }
  .supervisor .ttls .sub {
    font-size: 14px !important;
  }
}
/*-------------------------------------------------
supervisorWrap
---------------------------------------------------*/
.supervisor .supervisorWrap {
  width: 70%;
}
.supervisor .supervisorBox {
  display: flex;
  margin-bottom: 10px;
  align-items: center;
}
.supervisor .supervisorBox .img {
  width: 12.5%;
  z-index: 28;
  border-radius: 50%;
  flex-shrink: 0;
}
.supervisor .supervisorBox .img img {
  border-radius: 50%;
  border: 5px #FFF solid;
}
.supervisor .supervisorBox .txts {
  z-index: 0;
  width: 95%;
  background: #FFF;
  margin-left: -8%;
  padding: 15px 25px 15px 10%;
  border-radius: 5px;
  flex-shrink: 0;
}
.supervisor .supervisorBox .txts .conm {
  font-size: 14px !important;
  font-weight: bold !important;
}
.supervisor .supervisorBox .txts .name {
  font-size: 18px !important;
  font-weight: bold !important;
}
.supervisor .supervisorBox .txts .txt {
  font-size: 13px !important;
}
@media screen and (max-width: 767px) {
  .supervisor .supervisorWrap {
    width: 100%;
  }
  .supervisor .supervisorBox {
    margin-bottom: 10px;
    align-items: flex-start;
  }
  .supervisor .supervisorBox .img {
    width: 12%;
    margin-top: 8px;
  }
  .supervisor .supervisorBox .img img {
    border: 3px #FFF solid;
  }
  .supervisor .supervisorBox .txts {
    width: calc(100% - 4.5% - 10px);
    margin-left: -4.5%;
    padding: 10px 10px 10px 6%;
  }
  .supervisor .supervisorBox .txts .conm {
    font-size: 12px !important;
  }
  .supervisor .supervisorBox .txts .name {
    font-size: 16px !important;
  }
  .supervisor .supervisorBox .txts .txt {
    font-size: 10px !important;
  }
}
/*-------------------------------------------------
common
---------------------------------------------------*/
.h2img {
  text-align: center;
}
.h2img img {
  padding-top: 15px;
  margin: 0 auto;
}
.h2txt {
  font-size: 38px !important;
  font-weight: 600 !important;
  padding: 23px 0;
  line-height: 1.2 !important;
  border-radius: 10px;
  text-align: center;
  color: #FFF;
  margin-bottom: 35px !important;
}
.h2txt span {
  font-size: 24px !important;
}
.readtxt {
  font-size: 16px !important;
  line-height: 1.8;
  margin-bottom: 40px !important;
}
@media screen and (min-width: 757px) {
  #contents section h3 {
	  margin-top: 1.5em !important;
    margin-bottom: 0.8em !important;
  }
}
.entry h3 {
  font-size: 22px !important;
  font-weight: 600 !important;
  padding: 20px;
  color: #FFF;
  border-radius: 10px;
  margin-bottom: 30px !important;
  background: #a29470;
}
.entry.v02 h3 {
  font-size: 30px !important;
  font-weight: 600 !important;
  color: #333;
  margin-bottom: 0.8em !important;
  background: #f8f6ef !important;
}
@media screen and (min-width: 757px) {
  #contents section h4 {
    width: 100% !important;
    color: #333 !important;
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: 0;
  }
}
.entry h4 {
  font-size: 18px !important;
  font-weight: 600 !important;
  margin-bottom: 20px !important;
  display: flex;
  align-items: center;
  color: #333 !important;
}
.entry h4::before {
  content: "　";
  display: block;
  width: 15px;
  height: 15px;
  border-radius: 5px;
  background: #aea282;
  margin-right: 15px;
  margin-top: 2px
}
.entry.v02 h4 {
	     width: 100% !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid #e2e2e2 !important;
  margin-top: 1.8rem;
  color: #333 !important;
}
@media screen and (max-width: 1280px) {
  .h2txt {
    font-size: 38px !important;
    font-weight: 600 !important;
    padding: 23px 0;
    line-height: 1.6;
    border-radius: 10px;
    text-align: center;
    color: #FFF;
    margin-bottom: 35px !important;
  }
}
@media screen and (max-width: 767px) {
  .h2txt {
    font-size: 21px !important;
    padding: 15px 10px;
    border-radius: 5px;
    margin-bottom: 25px !important;
  }
  .h2txt span {
    font-size: 16px !important;
  }
  .readtxt {
    font-size: 14px !important;
    margin-bottom: 25px !important;
  }

  .entry h3 {
    font-size: 20px !important;
    padding: 10px;
    border-radius: 5px;
    margin-bottom: 20px !important;
  }
.entry.v02 h3 {
  font-size: 20px !important;
}
  .entry h4 {
    font-size: 16px !important;
    margin-bottom: 15px !important;
  }
  .entry h4::before {

    width: 12px;
    height: 12px;
    border-radius: 2.5px;
    margin-right: 10px;
  }
}
/* ==============================
entry 
============================== */
.entry p {
  margin-bottom: 20px !important;
  line-height: 1.8;
}
.entry .mb30 {
  margin-bottom: 30px !important;
}
.entry .bold {
  font-weight: bold;
}
.entry .red {
  color: #FF0000;
}
.entry .attention {
  border: 1px #EF4E4E solid;
  padding: 40px 20px 23px;
  background: #fff8fa;
  font-size: 16px;
  color: #333;
  margin-top: 38px;
  margin-bottom: 30px;
  border-radius: 8px;
  position: relative;
}
.entry .attention::before {
  content: "";
  background: url("../images/category/ico_attention01.png") no-repeat;
  width: 139px;
  height: 38px;
  position: absolute;
  top: -18px;
  left: 20px;
}
.entry .point {
  border: 1px #F4C22A solid;
  padding: 40px 20px 23px;
  background: #FFFAE9;
  font-size: 16px;
  color: #333;
  margin-top: 38px;
  margin-bottom: 30px;
  border-radius: 8px;
  position: relative;
}
.entry .point::before {
  content: "";
  background: url("../images/category/ico_point01.png") no-repeat;
  width: 108px;
  height: 38px;
  position: absolute;
  top: -18px;
  left: 20px;
}
.entry .memo {
  border: 1px #13A0DC solid;
  padding: 40px 20px 23px;
  background: #F3FBFF;
  font-size: 16px;
  color: #333;
  margin-top: 38px;
  margin-bottom: 30px;
  border-radius: 8px;
  position: relative;
}
.entry .memo::before {
  content: "";
  background: url("../images/category/ico_memo01.png") no-repeat;
  width: 112px;
  height: 38px;
  position: absolute;
  top: -18px;
  left: 20px;
}
.entry .quote {
  border: 1px #8B85BD solid;
  padding: 30px 20px 23px;
  background: #F8F8F9;
  font-size: 16px;
  color: #333;
  margin-top: 38px;
  margin-bottom: 30px;
  border-radius: 8px;
  position: relative;
}
.entry .quote::before {
  content: "";
  background: url("../images/category/ico_quote01.png") no-repeat;
  width: 35px;
  height: 28px;
  position: absolute;
  top: -14px;
  left: 20px;
}
.entry .supple2 {
  border: 1px #CCC solid;
  padding: 20px 23px;
  background: #FFF;
  font-size: 16px;
  color: #333;
  margin-bottom: 30px;
  border-radius: 8px;
}
.entry .supple3 {
  padding: 20px 23px;
  background: #efefef;
  font-size: 16px;
  color: #333;
  margin-bottom: 30px;
  border-radius: 8px;
}
.entry .flex {
  display: flex;
  justify-content: space-between;
  padding: 0 0 30px;
}
.entry .flex .txt {
  width: 462px;
}
.entry .flex .img {
  width: 310px;
}
.entry .flex .img img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .entry .attention {
    padding: 20px 15px 18px;
  }
  .entry .attention::before {
    content: "";
    background: url("../images/category/ico_attention01sp.png") no-repeat;
	  background-size: 117px;
    width: 117px;
    height: 28px;
    position: absolute;
    top: -14px;
    left: 15px;
  }
  .entry .point {
    padding: 20px 15px 18px;
  }
  .entry .point::before {
    content: "";
    background: url("../images/category/ico_point01sp.png") no-repeat;
		  background-size: 80px;
    width: 80px;
    height: 28px;
    position: absolute;
    top: -14px;
    left: 15px;
  }
  .entry .memo {
    padding: 20px 15px 18px;
  }
  .entry .memo::before {
    content: "";
    background: url("../images/category/ico_memo01sp.png") no-repeat;
		  background-size: 89px;
    width: 89px;
    height: 28px;
    position: absolute;
    top: -14px;
    left: 15px;
  }
  .entry .quote {
    padding: 20px 15px 18px;
  }
  .entry .supple2 {
    padding: 15px 18px;
  }
  .entry .supple3 {
    padding: 15px 18px;
  }
}
/* ==============================
.entrypage
============================== */
.entrypage ul.pageul {
  margin: 0 0 15px 0;
  padding: 20px 15px 15px 15px;
  background: #F4F5F7
}
.entrypage ul.pageul li {
  font-size: 16px;
  padding: 0 0 5px 0;
}
.entry ul.pageul {
  margin: 0 0 15px 0;
  padding: 20px 15px 15px 15px;
  background: #F4F5F7
}
.entry ul.pageul li {
  font-size: 16px;
  padding: 0 0 5px 0;
}
.entrypage ul.list {
  margin: 0 0 25px 0;
  list-style: none;
  padding: 0;
}
.entrypage ul.list li {
  font-size: 16px;
  position: relative;
  margin: 0.5em 0;
  padding-left: 20px;
}
.entrypage ul.list li:before {
  font-family: "Font Awesome 5 Free";
  content: "\f058"; /*アイコン*/
  color: #0096db; /* 色 */
  position: absolute;
  left: 0;
}
.entry ul.list {
  margin: 0 0 25px 0;
  list-style: none;
  padding: 0;
}
.entry ul.list li {
  font-size: 16px;
  position: relative;
  margin: 0.5em 0;
  padding-left: 20px;
}
.entry ul.list li:before {
  font-family: "Font Awesome 5 Free";
  content: "\f058"; /*アイコン*/
  color: #0096db; /* 色 */
  position: absolute;
  left: 0;
}
.entrypage .matome {
  font-size: 16px;
  color: #000;
  line-height: 1.8;
}
.entrypage .matome ul {
  line-height: 1.4;
}
.entrypage .att {
  text-align: left;
  font-size: 14px;
  margin: 15px auto;
  width: 660px;
}
.entrybox02 .att {
  text-align: left;
  font-size: 14px;
  margin: 15px auto;
  width: 660px;
}
@media screen and (max-width: 767px) {
  .entry .img {
    margin-bottom: 30px;
  }
  .entrypage .att {
    width: 90%;
  }
  .entrybox02 .att {
    width: 90%;
  }
}
/* ==============================
.blogcard
============================== */
.a-wrap {
  display: block;
  border: none;
  border-radius: 5px;
  margin: 20px 0;
  line-height: 1.4;
  position: relative;
  padding: 0;
  box-shadow: none;
  transition: all 0.2s ease-in-out;
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
  text-decoration: none !important;
}
.blogcard-wrap {}
.blogcard {
  box-sizing: border-box;
  border: 0px solid #ccc;
  border-radius: 5px;
  line-height: 1.6;
  position: relative;
  padding: 22px 20px;
  width: 100%;
  background-color: #fff;
}
.blogcard .blogcard-content {
  margin-left: 185px;
  max-height: 140px;
  min-height: 100px;
  overflow: hidden;
  color: #000;
}
.blogcard .blogcard-thumbnail {
  float: left;
  margin-top: 3px;
  width: 160px;
}
.blogcard .blogcard-title {
  font-size: 20px;
  font-weight: bold;
  color: #000;
  margin-bottom: 10px;
}
.blogcard .blogcard-tab {
  background: #13A0DC;
  font-size: 12px;
  color: #FFF;
  margin-bottom: 5px;
  padding: 5px 10px 5px 22px;
  width: 88px;
  text-align: center;
  border-radius: 5px;
  position: relative;
}
.blogcard .blogcard-tab::before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  content: "\f040";
  left: 10px;
  margin-top: 0px;
  font-size: 12px;
  font-weight: normal;
}
.blogcard-wrap .links {
  color: #13A0DC;
  text-decoration: underline;
}
@media (hover: hover) {
  .blogcard-wrap:hover .links {
    text-decoration: none;
  }
}
@media screen and (max-width: 767px) {
  .blogcard .blogcard-thumbnail {
    width: 30%;
  }
  .blogcard .blogcard-content {
    margin-left: 33%;
    max-height: auto;
    overflow: hidden;
    color: #000;
  }
}
/* ==============================
 .button
============================== */
.entry .button {
  position: relative;
  background: #000; /* Old browsers */
  border-radius: 30px;
  color: #FFFFFF;
  font-weight: bold;
  width: 80%;
  height: 57px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;
  font-size: 16px;
  line-height: 1.2;
  padding: 0 5px;
  margin: 30px auto;
  text-decoration: none;
}
.entry .button::after {
  position: absolute;
  content: "";
  background: url("../images/category/ico_arrow02.png") no-repeat;
  width: 8px;
  height: 12px;
  right: 3%;
  font-size: 14px;
  font-weight: normal;
}
@media (hover: hover) {
  .entry .button::hover {
    opacity: 0.7;
    text-decoration: underline;
  }
}
.entry table {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .entry .button {
    width: 100%;
  }
}
/* ==============================
 .external
============================== */
.entry .external {
  position: relative;
  color: #14b1cf;
  text-decoration: underline;
  font-size: 16px;
  display: flex;
}
.entry .external::before {
  content: url(../img/common/ico_arrow01.png);
  margin-right: 10px;
}
.entry .external::after {
  content: url(../img/common/ico_extrnal01.png);
  margin-left: 10px;
}
@media (hover: hover) {
  .entry .external:hover {
    text-decoration: none;
  }
}
/* ==============================
 .government
============================== */
.entry .government {
  background: #f1fdff;
  border-radius: 5px;
  margin-bottom: 30px;
}
.entry .government a {
  padding: 14px 20px;
  display: block;
}
.entry .government .external::before {
  margin-top: 3px;
}


/* ==============================
 .img
============================== */
.entry .img01 {
	margin: 0 auto 30px ;
	width: 70%;
}
.entry .img01 img{
	width: 100%;
	height: auto;
}
@media screen and (max-width: 767px) {
.entry .img01 {
	margin: 0 auto 30px ;
	width: 100%;
}
}
.entry .img02 {
	margin: 0 auto 30px ;
	width: 80%;
	display: flex;
	justify-content: space-between;
}
.entry .img02 div{
	width: 48%;
}
.entry .img02 div img{
	width: 100%;
	height: auto;
}
.entry .img02 div p{
	margin-bottom: 0!important;
}
.entry .img02 div div{
	width: 100% !important;
}
.entry .img02 div div a{
	font-size: 12px !important;
}
@media screen and (max-width: 767px) {
.entry .img02 {
	width: 100%;
}
}


.entry .img02t {
	margin: 0 auto 30px ;
	width: 100%;
	display: flex;
	justify-content: space-between;
}
.entry .img02t .img{
	width: 40%;
	flex-shrink: 0;
	margin-right: 20px;
}
.entry .img02t .img img{
	width: 100%;
	height: auto;
}
.entry .img02t div p{

}
.entry .img02t .img div{
	width: 100% !important;
}
.entry .img02t .img div a{
	font-size: 12px !important;
}
@media screen and (max-width: 767px) {

.entry .img02t {
	flex-wrap: wrap;
}
.entry .img02t .img{
	width: 100%;
	margin: 0;
	margin-bottom: 20px;
}
	
	
}




.entry .img03 {
	margin: 0 auto 30px ;
	width: 80%;
	display: flex;
	justify-content: space-between;
}
.entry .img03 div{
	width: 32%;
}
.entry .img03 div img{
	width: 100%;
	height: auto;
}
@media screen and (max-width: 767px) {
.entry .img03 {
	width: 100%;
}
}

/* ==============================
 .orderlist
============================== */
.orderlist {
  padding: 10px 0 0 0;
  border-left: 5px #009783 solid;
  margin-bottom: 30px;
}
.orderlist ol {
  list-style: none;
}
.orderlist ol li {
  counter-increment: title;
}
.orderlist ol li::before {
  content: counter(title) ". ";
  color: #009783;
  font-weight: bold;
}
.orderlist ol li {
  padding: 0 0 10px 0px;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .orderlist {
    padding: 0px 10px 0px 0px;
  }
}
/* ==============================
 .unorderlist
============================== */
.unorderlist {
  padding: 10px 0 0 0;
  border-left: 5px #009783 solid;
  margin-bottom: 30px;
}
.unorderlist ul {
  list-style: none;
  position: relative;
}
.unorderlist ul li::before {
  position: absolute;
  content: "●";
  left: 0;
  height: auto;
  margin-top: 3px;
  font-size: 12px;
  font-weight: normal;
  color: #009783;
}
.unorderlist ul li {
  padding: 0 0 10px 20px;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .unorderlist {
    padding: 0px 10px 0px 0px;
  }
.unorderlist ul li:last-child {
  padding: 0 0 0px 20px;
}
}
/* ==============================
 .listtitle
============================== */
.listtitle {
  font-size: 18px !important;
  font-weight: bold;
  color: #009783;
  margin-bottom: 15px;
  margin-left: 20px;
}
@media screen and (max-width: 767px) {
  .listtitle {
    font-size: 16px!important;
  margin-left: 10px;
  }
}
/* ==============================
 .orderlist
============================== */
.explanation {
  background: #F4F4F4;
  border: 1px #cfd2d2 solid;
  padding: 20px 30px 13px 30px;
  margin-bottom: 30px;
}
.explanation dt {
  font-size: 20px;
  font-weight: bold;
  color: #000;
  margin-bottom: 10px;
  padding-bottom: 10px;
  padding-left: 23px;
  border-bottom: 1px #cfd2d2 solid;
  background: url("../images/category/ico_explan01.png") no-repeat left 8px;
}
.explanation dd {
  padding: 0 0 15px 0px;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .explanation {
    padding: 20px 20px 10px 20px;
  }
  .explanation dt {
    font-size: 16px;
	   background: url("../images/category/ico_explan01.png") no-repeat left 6px;
  }
}
/* ==============================
 .tabledesign
============================== */
.tabledesign {
  font-size: 16px;
  margin-bottom: 30px;
  border: 0;
  border-top: 1px #cfd2d2 solid !important;
  border-left: 1px #cfd2d2 solid !important;
}
.tabledesign th {
  background: #d0eff5;
  color: #000;
  padding: 15px 20px;
  font-size: 16px;
  vertical-align: middle;
  border: 0;
  border-bottom: 1px #cfd2d2 solid !important;
  border-right: 1px #cfd2d2 solid !important;
}
.tabledesign td {
  padding: 15px 20px;
  font-size: 16px;
  background: #FFFFFF;
  border: 0;
  border-bottom: 1px #CCC solid;
  border-right: 1px #CCC solid;
  vertical-align: middle;
}
.tabledesign .thlike {
  background: #efefef;
  font-weight: bold;
  color: #000;
}
.tableWrap table th, .tableWrap table td {
  white-space: normal;
}
@media screen and (max-width: 767px) {
  .tableWrap {
    overflow: auto;
    margin-bottom: 30px;
  }
  .tableWrap table {
    width: 100%;
    margin-bottom: 0;
  }
  .tableWrap table th, .tableWrap table td {
    white-space: nowrap;
  }
}
/* ==============================
 .marker
============================== */
.Ymarker {
background: linear-gradient(transparent 50%, #ff9 50%);
}
.Rmarker {
background: linear-gradient(transparent 50%, #ffe1eb 50%);
}
/* ==============================
 .visorspeech01
============================== */
.visorspeech {
  display: flex;
  margin-bottom: 30px;
  align-items: flex-start;
}
.visorspeech .img img {
  margin: 0 0 10px;
}
.visorspeech .img {
  width: 90px;
  margin: 0 20px 0 0;
  flex-shrink: 0;
  overflow: hidden;
  text-align: center;
  font-size: 14px;
}
.visorspeech .img img {
  margin: 0 0 5px;
  border-radius: 45px;
}
.visorspeech .txt {
  position: relative;
  padding: 20px;
  font-size: 16px;
  background: #FFF;
  border: solid 2px #CCC;
  border-radius: 5px;
}
.visorspeech .txt:before {
  content: "";
  position: absolute;
  top: 40%;
  left: -21px;
  margin-top: -12px;
  border: 12px solid transparent;
  border-right: 12px solid #FFF;
  z-index: 2;
}
.visorspeech .txt:after {
  content: "";
  position: absolute;
  top: 40%;
  left: -23px;
  margin-top: -12px;
  border: 12px solid transparent;
  border-right: 11px solid #CCC;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .visorspeech .img {
    width: 75px;
  }
  .visorspeech .txt {
    padding: 15px;
    font-size: 14px;
  }
  .visorspeech .txt:before {
    top: 20%;
  }
  .visorspeech .txt:after {
    top: 20%;
  }
}
/*-------------------------------------------------
list
---------------------------------------------------*/
#list {
  padding-top: 70px !important;
}
#list .h2txt.listh2 {
  background: #009783;
  position: relative;
}
@media screen and (max-width: 767px) {
  #list {
    padding-top: 35px !important;
  }
}
/*-------------------------------------------------
tab01
---------------------------------------------------*/
#tab01 {
  padding-top: 70px !important;
}
#tab01 .h2txt.tab01h2 {
  background: #f3b22b;
  position: relative;
}
#tab01 .h2txt {
  padding-bottom: 25px;
}
#tab01 .h2txt span {
  padding-bottom: 12px !important;
  display: block;
}
@media screen and (max-width: 767px) {
  #tab01 {
    padding-top: 35px !important;
  }
  #tab01 .h2txt {
    padding-bottom: 19px;
  }
  #tab01 .h2txt span {
    padding-bottom: 0px !important;
    display: block;
  }
}
/*-------------------------------------------------
tab01 acwrap
---------------------------------------------------*/
#tab01 .acwrap {
  border-radius: 10px;
  padding: 10px;
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.15);
  margin-bottom: 15px !important;
}
#tab01 .acttl {
  line-height: 1.4;
  cursor: pointer;
  height: 80px;
  display: flex;
  background: url("../images/category/ico_plus01.png") no-repeat 97% center;
}
#tab01 .acttl.active {
  background: url("../images/category/ico_minus01.png") no-repeat 97% center;
}
#tab01 .acttl .img {
  width: 160px;
  border-radius: 10px;
  display: flex;
  align-items: center;
	overflow: hidden;
}
#tab01 .acttl .img img {
  border-radius: 10px;
}
#tab01 .acttl .ttl {
  font-size: 26px !important;
  font-weight: 600 !important;
  display: flex;
  align-items: center;
  padding: 0 30px;
}
@media screen and (max-width: 767px) {
  #tab01 .acwrap {
    border-radius: 5px;
    padding: 8px;
    box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.15);
    margin-bottom: 10px !important;
  }
  #tab01 .acttl {
    height: 60px;
    background: url("../images/category/ico_plus01.png") no-repeat 97% center/15px;
  }
  #tab01 .acttl.active {
    background: url("../images/category/ico_minus01.png") no-repeat 97% center/15px;
  }
  #tab01 .acttl .img {
    width: 80px;
    border-radius: 5px;
    flex-shrink: 0;
  }
  #tab01 .acttl .img img {
    border-radius: 5px;
  }
  #tab01 .acttl .ttl {
    font-size: 16px !important;
    font-weight: 600 !important;
    padding: 0 40px 0 8px;
	  line-height: 1.4;
  }
}
/*-------------------------------------------------
tab01 box
---------------------------------------------------*/
#tab01 .acbox {
  display: none;
  background: #f8f6ef;
  padding: 30px 40px;
  margin-top: 10px;
}
@media screen and (max-width: 767px) {
  #tab01 .acbox {
    padding: 20px 10px;
  }
}
/*-------------------------------------------------
tab02
---------------------------------------------------*/
#tab02 {
  padding-top: 70px !important;
}
#tab02 .h2txt.tab02h2 {
  background: #eb5767;
  position: relative;
}
#tab02 .h2txt {
  padding-bottom: 25px;
}
#tab02 .h2txt span {
  padding-bottom: 12px !important;
  display: block;
}
@media screen and (max-width: 767px) {
  #tab02 {
    padding-top: 35px !important;
  }
  #tab02 .h2txt {
    padding-bottom: 19px;
  }
  #tab02 .h2txt span {
    padding-bottom: 0px !important;
  }
}
/*-------------------------------------------------
tab03
---------------------------------------------------*/
#tab03 {
  padding-top: 70px !important;
}
#tab03 .h2txt.tab03h2 {
  background: #a7cd45;
  position: relative;
}
#tab03 .h2txt {
  padding-bottom: 25px;
}
#tab03 .h2txt span {
  padding-bottom: 12px !important;
  display: block;
}
@media screen and (max-width: 767px) {
  #tab03 {
    padding-top: 35px !important;
  }
  #tab03 .h2txt {
    padding-bottom: 19px;
  }
  #tab03 .h2txt span {
    padding-bottom: 0px !important;
  }
}
/*-------------------------------------------------
tab04
---------------------------------------------------*/
#flow {
  padding-top: 70px !important;
}
#flow .h2txt.flowh2 {
  background: #00a0dd;
  position: relative;
}
#flow .h2txt {
  padding-bottom: 25px;
}
#flow .h2txt span {
  padding-bottom: 12px !important;
  display: block;
}
#flow .flowWrap {}
#flow .flowBox {
  background: #f8f6ef;
  border-radius: 10px;
  padding: 35px 30px;
  margin-bottom: 40px;
  position: relative;
}
#flow .nonar::before {
  position: absolute;
  content: "";
  width: 0px;
  height: 0px;
  top: 0px;
  left: 0;
  right: 0;
  margin: 0;
}
#flow .flowBox .ttl {
  font-size: 28px !important;
  font-weight: 600 !important;
  display: flex;
  align-items: center;
  padding-right: 20px;
margin-top: 0!important;
}
#flow .flowBox .ttl::before {
  content: "1";
  font-size: 26px !important;
  width: 60px;
  height: 60px;
  background: #a29470;
  margin-right: 20px;
  border-radius: 10px;
  box-shadow: 0px 3px #d7caa7;
  color: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
}
#flow .flowBox .no01::before {
  content: "1";
}
#flow .flowBox .no02::before {
  content: "2";
}
#flow .flowBox .no03::before {
  content: "3";
}
#flow .flowBox .no04::before {
  content: "4";
}
#flow .flowBox .no05::before {
  content: "5";
}
#flow .flowBox .no06::before {
  content: "6";
}
#flow .flowBox .no07::before {
  content: "7";
}
#flow .flowBox .no08::before {
  content: "8";
}
#flow .flowBox .no09::before {
  content: "9";
}


#flow .flowBox .txts {
  font-size: 16px !important;
  line-height: 1.8 !important;
}
  #flow .nonar::before {
    position: absolute;
    content: "" !important;
    width: 0px;
    height: 0px;
    top: 0px;
    left: 0;
    right: 0;
    margin: 0;
  }
  #flow .flowBox::before {
    position: absolute;
    content: url("../images/category/ico_arrow01.png");
    width: 27px;
    height: 15px;
    top: -32px;
	  left:0;
	  right: 0;
	  margin: auto;
  }



@media screen and (max-width: 767px) {
  #flow {
    padding-top: 35px !important;
  }
  #flow .h2txt {
    padding-bottom: 19px;
  }
  #flow .h2txt span {
    padding-bottom: 0px !important;
    display: block;
  }
  #flow .flowWrap {}
  #flow .flowBox {
    border-radius: 5px;
    padding: 20px 15px;
    margin-bottom: 35px;
    flex-wrap: wrap
  }
  #flow .flowBox::before {
    top: -26px;
  }
  #flow .flowBox .ttl {
    font-size: 20px !important;
    width: 100%;
    flex-shrink: 0;
  }
  #flow .flowBox .ttl::before {
    font-size: 18px !important;
    width: 35px;
    height: 35px;
    margin-right: 10px;
    border-radius: 5px;
    box-shadow: 0px 2px #d7caa7;
  }
  #flow .flowBox .txts {
    font-size: 14px !important;
    line-height: 1.8 !important;
  }
}
/*-------------------------------------------------
tab05
---------------------------------------------------*/
#tab05 {
  padding-top: 70px !important;
}
#tab05 .h2txt.tab05h2 {
  background: #a159f2;
  position: relative;
}
#tab05 .h2txt {
  padding-bottom: 25px;
}
#tab05 .h2txt span {
  padding-bottom: 12px !important;
  display: block;
}
@media screen and (max-width: 767px) {
  #tab05 {
    padding-top: 35px !important;
  }
  #tab05 .h2txt {
    padding-bottom: 19px;
  }
  #tab05 .h2txt span {
    padding-bottom: 0px !important;
  }
}
/* ---------------------------------------------
scsp
--------------------------------------------- */
.scsp {}
/* ---------------------------------------------
ank03stk
--------------------------------------------- */
.ank03stk {
  background: #ffffff;
  position: fixed;
  display: flex;
        width: 1200px;
  top: 0;
  z-index: 30;
  border-bottom: 1px #dbdbdb solid;
}
.ank03stk .ankbox {
  height: 64px;
}
.ank03stk .ankbox a {
  height: 64px;
  font-size: 16px;
  color: #333;
  font-weight: bold;
  display: flex !important;
  justify-content: center;
  align-items: center;
  text-align: center;
  position: relative;
  text-decoration: none !important;
  font-feature-settings: "palt" !important;
}
.ank03stk .ankbox:first-child a {}
.ank03stk .ankbox a:hover {}

.ank03stk .ankbox.on01 a {
  border-bottom: 5px #009783 solid !important;
  color: #009783;
}

@media (hover: hover) {
  .ank03stk .ankbox.on01 a:hover, .ank03stk .ankbox.sub01 a:hover {
    background: #009783;
    color: #fff;
  }
}

.ank03stk .ankbox.on02 a {
  border-bottom: 5px #f3b22b solid !important;
  color: #f3b22b;
}
@media (hover: hover) {
  .ank03stk .ankbox.on02 a:hover, .ank03stk .ankbox.sub02 a:hover {
    background: #f3b22b;
    color: #fff;
  }
}
.ank03stk .ankbox.on03 a {
  border-bottom: 5px #eb5767 solid !important;
  color: #eb5767;
}

@media (hover: hover) {
  .ank03stk .ankbox.on03 a:hover, .ank03stk .ankbox.sub03 a:hover {
    background: #eb5767;
    color: #fff;
  }
}
.ank03stk .ankbox.on04 a {
  border-bottom: 5px #a7cd45 solid !important;
  color: #a7cd45;
}
@media (hover: hover) {
  .ank03stk .ankbox.on04 a:hover, .ank03stk .ankbox.sub04 a:hover {
    background: #a7cd45;
    color: #fff;
  }
}

.ank03stk .ankbox.on05 a {
  border-bottom: 5px #00a0dd solid !important;
  color: #00a0dd;
}

@media (hover: hover) {
  .ank03stk .ankbox.on05 a:hover, .ank03stk .ankbox.sub05 a:hover {
    background: #00a0dd;
    color: #fff;
  }
}

.ank03stk .ankbox.on06 a {
  border-bottom: 5px #a159f2 solid !important;
  color: #a159f2;
}

@media (hover: hover) {
  .ank03stk .ankbox.on06 a:hover, .ank03stk .ankbox.sub06 a:hover {
    background: #a159f2;
    color: #fff;
  }
}





@media screen and (max-width: 1560px) {
  .ank03stk {
    width: calc(100% - 380px);
  }
}
@media screen and (max-width: 767px) {
  .ank03stk {
    top: 85.5px;
    width: 100%;
    margin-left: -20px;
  }
  .ank03stk .ankbox {
    border-top: 1px #dbdbdb solid;
    height: 45px;
  }
  .ank03stk .ankbox a {
    height: 45px;
    padding: 3px;
    font-size: 11px !important;
    font-weight: 700;
    align-items: center;
    line-height: 1.2 !important;
  }

	
	
	
}