/* -------------------------------- 

吹き出し

-------------------------------- */
html {
	scroll-behavior: smooth;
}
.kaiwa-img-left {
  width: 20%;
  display: inline-block;
  vertical-align: top;
  margin-bottom: 10px;
  box-sizing: border-box;
  text-align: right;
  padding-top: 14px;
}

@media only screen and (min-width: 768px) {
.kaiwa-img-left {
  width: 10%;
  display: inline-block;
  vertical-align: top;
  margin-bottom: 10px;
  box-sizing: border-box;
  text-align: right;
  padding-top: 14px;
}
}

.kaiwa-img-left img {
  width: 100%;
  max-width: 75px!important;
}

.kaiwa-name-left {
  font-size:14px;
  position: relative;
  width: 72%;
  display: inline-block;
  vertical-align: top;
  margin-left: 2%;
  margin-right: 2%;
  margin-bottom: 30px;
  box-sizing: border-box;
  text-align: left;
}
.kaiwa-text-left {
  display: inline-block;
  background-color: #e0edff;
  padding: 20px;
  border-radius: 10px;
  font-size: 110%;
  font-weight: 600;
  line-height: 20px;
  color: #069;
}
@media only screen and (min-width: 768px) {
.kaiwa-text-left {
  display: inline-block;
  background-color: #e0edff;
  padding: 20px;
  border-radius: 10px;
  font-size: 130%;
  font-weight: 600;
  line-height: 25px;
  color: #069;
}
}

.kaiwa-text-left:after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 15px 7px 0;
  border-color: transparent #e0edff transparent transparent;
  top: 30px;
  left: -13px;
}

.kaiwa-name-right {
  font-size: 14px;
  position: relative;
  width: 73%;
  display: inline-block;
  vertical-align: top;
  margin-right: 2%;
  margin-left: 2%;
  margin-bottom: 30px;
  box-sizing: border-box;
  text-align: right;
}
@media only screen and (min-width: 768px) {
.kaiwa-img-right {
  width: 10%;
  display: inline-block;
  vertical-align: top;
  margin-bottom: 10px;
  box-sizing: border-box;
  padding-top: 14px;
  text-align: left;
}
}
.kaiwa-img-right {
  width: 20%;
  display: inline-block;
  vertical-align: top;
  margin-bottom: 10px;
  box-sizing: border-box;
  padding-top: 14px;
  text-align: left;
}

.kaiwa-img-right img {
  width: 100%;
  max-width: 75px!important;
}

.kaiwa-img-right p {
  text-align: left;
  padding: 0px;
  margin: 0px;
}
.kaiwa-text-right {
  display: inline-block;
  text-align: left;
  background-color: #ffeda5;
  padding: 20px;
  border-radius: 10px;
  font-size: 110%;
  font-weight: 600;
  line-height: 20px;
  color: #f47119;
}
@media only screen and (min-width: 768px) {
.kaiwa-text-right {
  display: inline-block;
  text-align: left;
  background-color: #ffeda5;
  padding: 20px;
  border-radius: 10px;
  font-size: 130%;
  font-weight: 600;
  color: #f47119;
  line-height: 25px;
}
}

.kaiwa-text-right:after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 0 7px 15px;
  border-color: transparent transparent transparent #ffeda5;
  top: 30px;
  right: -13px;
}

.kome{
        font-size: 14px!important;
        text-align: left!important;
        line-height: 20px!important;
        font-weight: 400!important;
        padding-left:1em;
	text-indent:-1em;
        }

.kome a:hover{
               text-decoration: underline;
               }

.text-bold-l{
       font-weight: 600;
       font-size: 16px;
       text-align: left;
       }
       
.red-title-c{
    background:linear-gradient(135deg, #cc001b, #650000);
    text-align: center;
    font-weight: 600;
    color: #ffffff;
    margin:0px 0px 30px 0px;
    padding:20px;
    font-size: 20px;
    }
 
.color-box {
    background-color: #f2fadc;
    padding: 20px;
    margin: 20px 0px 20px 0px;
    border-radius: 3px;
}

.color-box p{
              font-weight: 600;
              }

/* -------------------------------- 

カラム

-------------------------------- */
               
#article .text-bold-c {
    font-weight: 600;
    text-align: center;
    font-size: 100%;
    line-height: 27px;
    margin-bottom: 20px;
}
@media only screen and (min-width: 768px) {
#article .text-bold-c {
    font-weight: 600;
    text-align: center;
    font-size: 18px;
    line-height: 27px;
    margin-bottom: 20px;
}
}

.color-box2 ul{
                margin:20px 0;
                }
@media only screen and (min-width: 768px) {
.color-box2 ul{
                margin:20px 20px 20px 0px;
                }
                }
.index-title-s{
                list-style: none;
                margin-left: 0px!important;
                }
.box{
      margin: 5px;
      }
@media only screen and (min-width: 768px) {
.box{
      margin: 20px;
      }
      }
               
.cd-fixed-bg-2 h3 {
    font-size: 18px;
    margin: 20px 0px 0px 0px;
    line-height: 23px;
    text-align: left;
    border-bottom: 1px dotted #595757;
    color: #595757;
    padding-bottom: 15px;
}
.title-23-c{
             font-size: 20px;
             font-weight: 600;
             text-align: center;
             }
@media only screen and (min-width: 768px) {
.title-23-c{
             font-size: 23px;
             font-weight: 600;
             text-align: center;
             margin-bottom: 30px;
             }
             }
.color-box3 {
    background-color: #ecf9dc;
    padding: 20px;
    margin: 20px 0px 20px 0px;
    border-radius: 3px;
}

.green{
        color: #22ac38;
        }
/* 心の声吹き出し本体 */
.bubble {
  position: relative;
  display: inline-block;
  margin: 1.5em 0 0 40px;
  padding: 17px 10px;
  min-width: 200px;
  max-width: 100%;
  background: #ffffff;
  font-size: 16px;
  border-radius: 10px;
  border: 2px solid #22ac38;
}
/* 円アイコン1 */
.bubble:before {  
  content: "";
  position: absolute;
  left: -38px;
  width: 13px;
  height: 12px;
  bottom: 0;
  background: #ffffff;
  border-radius: 50%;
  border: 2px solid #22ac38;
}
/* 円アイコン2 */
.bubble:after {
  content: "";
  position: absolute;
  left: -24px;
  width: 20px;
  height: 18px;
  bottom: 3px;
  background: #ffffff;
  border-radius: 50%;
  border: 2px solid #22ac38;
}
.bubble p {
  margin: 0;
  padding: 0;
  text-align: center;
  color: #fff;
}
.flex-container{
  justify-content: center;
  align-items: center;
}
/*4カラム*/
/*4カラム*/
.grid4{
border:0px solid #ccc;
margin:20px 0;
}

.grid4 .col:nth-of-type(4n+1),
.grid3 .col:nth-of-type(3n+1),
.grid2 .col:nth-of-type(2n+1) {
    margin-left: 0;
    clear: left;
}

/* col */
.col {
	float: left;
	margin-left: 3.2%;
	}

/* grid4 col */
.grid4 .col {
	width: 22.6%;
}

/* grid3 col */
.grid3 .col {
	width: 31.2%;
	border-radius: 10px;

}

/* grid2 col */
.grid2 .col {
	width: 48.4%;
}

@media screen and (max-width: 740px) {
	/* change grid4 to 2-column */

.grid4{
border:0px solid #ccc;
margin:0 0;
}
	
	.grid4 .col {
		width: 48.4%;
	}
	.grid4 .col:nth-of-type(3n+1) {
		margin-left: 3.2%;
		clear: none;
	}
	.grid4 .col:nth-of-type(2n+1) {
		margin-left: 0;
		clear: left;
	}

	/* change grid3 to 2-column */
	.grid3 .col {
		width: 48.4%;
		border:0px;
	}
	.grid3 .col:nth-of-type(3n+1) {
		margin-left: 3.2%;
		clear: none;
	}
	.grid3 .col:nth-of-type(2n+1) {
		margin-left: 0;
		clear: left;
		border:0px;
	}
	}
		
@media screen and (max-width: 400px) {
	.col {
		width: 100% !important;
		margin-left: 0 !important;
		clear: none !important;
	}}

#cardlayout-wrap {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
     /*margin: 2em auto;
   max-width: 960px;*/
    width: 100%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
    margin-bottom: 30px;
}
@media screen and (max-width: 768px){   
#cardlayout-wrap {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    /*margin: 2em auto;*/
    /*max-width: 960px;*/
    width: 100%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
    padding-bottom: 100px;
    padding:0 15px;
}
}
.card-text-tax-1 {
    margin: 0;
    padding: 20px;
    color: #ffffff;
    line-height: 27px;
    background-color: #06b4ea;
    border-width: 0 1px 1px 1px;
    text-align: center;
    font-weight: 600;
    font-size: 18px;
    min-height: 200px;
    border-radius:5px;
    display: flex;
	align-items: center;
	justify-content: center;
}
.card-text-tax-2 {
    margin: 0;
    padding: 20px;
    color: #ffffff;
    line-height: 27px;
    background-color: #00479d;
    border-width: 0 1px 1px 1px;
    text-align: center;
    font-weight: 600;
    font-size: 18px;
    min-height: 200px;
    border-radius:5px;
    display: flex;
	align-items: center;
	justify-content: center;
}
.card-text-tax-3 {
    margin: 0;
    padding: 20px;
    color: #ffffff;
    line-height: 27px;
    background-color: #9dc814;
    border-width: 0 1px 1px 1px;
    text-align: center;
    font-weight: 600;
    font-size: 18px;
    min-height: 200px;
    border-radius:5px;
    display: flex;
	align-items: center;
	justify-content: center;
}
.card-text-tax-4 {
    margin: 0;
    padding: 20px;
    color: #ffffff;
    line-height: 27px;
    background-color: #ccc;
    border-width: 0 1px 1px 1px;
    text-align: center;
    font-weight: 600;
    font-size: 18px;
    min-height: 200px;
    border-radius:5px;
    display: flex;
	align-items: center;
	justify-content: center;
}
.card-box{
      text-align: center;
      color: #ffffff;
      font-size: 18px;
      }
@media screen and (max-width: 768px){
.card-text-tax-1 {
    margin: 0;
    padding: 30px;
    line-height: 27px;
    border-width: 0 1px 1px 1px;
}
.card-text-tax-2 {
    margin: 0;
    padding: 30px;
    line-height: 27px;
    border-width: 0 1px 1px 1px;
}
.card-text-tax-3 {
    margin: 0;
    padding: 30px;
    line-height: 27px;
    border-width: 0 1px 1px 1px;
}
.card-text-tax-4 {
    margin: 0;
    padding: 30px;
    line-height: 27px;
    border-width: 0 1px 1px 1px;
}
.card-box{
      text-align: center;
      color: #ffffff;
      font-size: 16px;
      }
}

.card-list {
    margin: 0.5em auto;
    padding: 0;
    width: 96%;
    background: #ffffff;
    /*box-shadow: 0 4px 8px rgba(0, 0, 0, 0.08);*/
}

#dl img{
         border: 1px solid #ccc;
         }
#lead ul li{
       list-style: none;
       line-height: 32px;
       font-weight: 600;
       }
.mgb30{
        margin-bottom: 30px;
        }
.maru {
 height:50px;
 width:50px;
 border-radius:50%;
 line-height:40px;
 text-align:center;
 margin: 0 auto;
 margin-bottom: -15px;
 background: #000000;
 color: #ffffff;
 font-weight: 600;
 font-size: 20px;
 position: relative;
 z-index: 10;
 border:5px solid #ffffff;
}
.title-20-b{
              font-size: 20px;
              color: #172a88;
              font-weight: 600;
              text-align: left;
              margin: 20px 0;
              }
