@charset "Shift_JIS";

  body {
  -webkit-text-size-adjust: 100%;
  }

/* ページTOPへ戻るボタン */

html {
    scroll-behavior: smooth;
}
.pagetopb {
    height: 50px;
    width: 50px;
    position: fixed;
    right: 30px;
    bottom: 30px;
    background: #ffffff;
    border: solid 2px #999999;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
}

.pagetopb__arrow {
    height: 10px;
    width: 10px;
    border-top: 3px solid #999999;
    border-right: 3px solid #999999;
    transform: translateY(20%) rotate(-45deg);
}

@media (hover: hover) and (pointer: fine) {
    .pagetopb:hover, .pagetopb:hover .pagetopb__arrow {
        border-color: #1e7aca;
    }
}

/* BOX26のCSS 1 */

  .box26 {
    position: relative;
    margin: 12px 0;
    padding: 30px 20px 25px 20px;
    border: solid 3px #1e7aca;
    border-radius: 8px;
    font-size: 14px;
    text-align:left;
  }
  .box26 .box-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 30px;
    padding: 0 10px;
    line-height: 1;
    font-size: 25px;
    background: #FFF;
    color: #1e7aca;
    font-weight: bold;
  }
  .box26 p {
    margin: 0; 
    padding: 0;
  }

/* BOX26のCSS 2 */

  .box26b {
    position: relative;
    margin: 12px 0;
    padding: 10px 7px 10px 7px;
    border: solid 3px #1e7aca;
    border-radius: 8px;
    font-size: 14px;
    text-align:left;
  }
  .box26b .box-titleb {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 30px;
    padding: 0 10px;
    line-height: 1;
    font-size: 25px;
    background: #FFF;
    color: #1e7aca;
    font-weight: bold;
  }
  .box26b p {
    margin: 0; 
    padding: 0;
  }

/*少しずらしたボックス BOX27*/

.box27{
	margin: 15px auto;
	padding: 30px 0px;/*内側の余白*/
	background: none;/*元のボックス背景色なし*/
	border:1px solid #ccc ;/*線の太さ・種類・色*/
	position: relative;/*配置（基準）*/
}
.box27:after{
	background-color:#ffffd1;/*ずらしたボックスの背景色*/
	border:none;
	content: '';
	position: absolute;/*配置（ここを動かす）*/
	top: 7px;/*上から7pxずらす*/
	left: 7px;/*左から7pxずらす*/
	width: 100%;
	height: 100%;
	z-index: -1;
}

/* BOX28のCSS 1 */

.box28A {
    position: relative;
    margin: 30px 0px 10px 0px;
    padding: 25px 10px 7px;
    border: solid 2px #999999;
}
.box28A .box-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 0 10px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #999999;
    color: #ffffff;
    font-weight: bold;
    width: 150px;
    text-align: center;
}
.box28A p {
    margin: 0; 
    padding: 15px 0px 10px 0px;
    text-align: left;
}

/* BOX28のCSS 2 */

.box28B {
    position: relative;
    margin: 30px 0px 10px 0px;
    padding: 25px 10px 7px;
    border: solid 2px #ff7f50;
}
.box28B .box-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 0 10px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #ff7f50;
    color: #ffffff;
    font-weight: bold;
    width: 150px;
    text-align: center;
}
.box28B p {
    margin: 0; 
    padding: 15px 0px 10px 0px;
    text-align: left;
}

/* BOX28のCSS 3 */

.box28C {
    position: relative;
    margin: 30px 0px 10px 0px;
    padding: 25px 10px 7px;
    border: solid 2px #4682b4;
}
.box28C .box-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 0 10px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #4682b4;
    color: #ffffff;
    font-weight: bold;
    width: 150px;
    text-align: center;
}
.box28C p {
    margin: 0; 
    padding: 15px 0px 10px 0px;
    text-align: left;
}

/* BOX28のCSS 4 */

.box28D {
    position: relative;
    margin: 30px 0px 10px 0px;
    padding: 40px 0px 10px 0px;
    border: solid 2px #999999;
}
.box28D .box-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 0 10px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #999999;
    color: #ffffff;
    font-weight: bold;
    width: 150px;
    text-align: center;
}

/* BOX28のCSS 5 */

.box28E {
    position: relative;
    margin: 30px 0px 30px 0px;
    padding: 25px 10px 7px;
    border: solid 2px #999999;
}
.box28E .box-title {
    position: absolute;
    display: inline-block;
    top: -2px;
    left: -2px;
    padding: 0 10px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #999999;
    color: #ffffff;
    font-weight: bold;
    width: 150px;
    text-align: center;
}
.box28E p {
    margin: 0; 
    padding: 15px 0px 10px 0px;
    text-align: left;
}

/* 水平線CSS */

.hr_style {
	position: relative;
	height: 1px;
	border-width: 0;
	background-color: #f5f5f5;
	background-image: -webkit-linear-gradient(left,
	#f5f5f5 0%,#666666 50%,#f5f5f5 100%);
	background-image:         linear-gradient(90deg,
	#f5f5f5 0%,#666666 50%,#f5f5f5 100%);
}