.midashi {
  position: relative;
  padding: 1rem .5rem;
  font-size: 40px;
  display: inline-block; /* アニメーションを適用するために必要 */
}

.midashi:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0%; /* 初期状態では幅を0に */
  height: 6px;
  content: '';
  border-radius: 3px;
  background-image: -webkit-gradient(linear, right top, left top, from(#2af598), to(#009efd));
  background-image: -webkit-linear-gradient(right, #2af598 0%, #009efd 100%);
  background-image: linear-gradient(to left, #2af598 0%, #009efd 100%);
  transition: width 1s ease-out; /* アニメーションの設定 */
}

/* ページ読み込み時にアニメーションを適用 */
.midashi.loaded::after {
  width: 100%; /* アニメーション後、幅が100%に */
}

body{
	text-align: center;
}

.midasi{
	font-size:38px;
	}

h2{
	margin-top: 0%;
	margin-bottom:0%;
	margin-left:8%;
	margin-right:8%;
	background-color:khaki;
	padding: 1rem 2rem;
 	border-bottom: 3px solid #dcdcdc;
	border-left: 5px solid #000;
	background: #f4f4f4;
 	border-radius: 3px;
 	box-shadow: 0 0 8px rgba(0,0,0,.4);
 	text-align:center;
}


@media screen and (max-width: 768px) {
.word,.excel,.access {
	margin:10px;
	display: flex;
	flex-direction: column;
	justify-content: center;
  	align-items: center;
	}
.iconn{
	height:170px;
	}
.midashi {
  font-size: 32px;
	}
h2{
	font-size:20px;
	}
}


#showButton,#showButton2{
	font-size:24px;
	background: #778899;
	color: #FFF;
	padding:2px;
	margin:auto
	
}

p{
	margin-left:8%;
	margin-right:8%
}

mark {
	background-color:gold;
}

.disappear,.appear{
	padding:20px;
}

.detail {
	margin-bottom:30px;
}
.detail-p{
	margin-bottom:0px;
}
