
.linkbtn,
a.linkbtn,
button.linkbtn {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 2rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #fff;
  border-radius: 0.5rem;
}

a.linkbtn-c {
  border: 1px solid #1b7e40;
  border-radius: 1rem;
  background: #1b7e40;
  background: -webkit-gradient(linear, left bottom, left top, color-stop(50%, #1b7e40), to(#20b958));
  background: -webkit-linear-gradient(bottom, #1b7e40 50%, #20b958 100%);
  background: linear-gradient(0deg, #1b7e40 50%, #20b958 100%);
  -webkit-box-shadow: inset 0 1px 1px rgba(255, 255, 255, .6), 0 5px 10px rgba(0, 0, 0, .1);
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, .6), 0 5px 10px rgba(0, 0, 0, .1);
}

.table{
    display: table;
    border-collapse: collapse;
}
.table>div{
    display: table-row;
}
.table>div>div{
    display: table-cell;
    border: 1px solid #999;
    padding: 5px;
    text-align: left;
}

.gradation {
    position: relative;
}

.gradation::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: linear-gradient(90deg, transparent 50%, #f0ffff 95%);
}

h1 {
    padding: 0.5em 1em;
    margin: 2em 0;
    font-size: 3em;
    font-weight: bold;
    color: #ff6347;/*文字色*/
    background: #FFF;
    border: solid 3px #ff6347;/*線*/
    border-radius: 10px;/*角の丸み*/
}

.sph1 {
    padding: 0.5em 1em;
    margin: 2em 0;
    font-size: 2em;
    font-weight: bold;
    color: #ff6347;/*文字色*/
    background: #FFF;
    border: solid 3px #ff6347;/*線*/
    border-radius: 10px;/*角の丸み*/
}

.box4{
    padding: 8px 19px;
    margin: 1em; 
    padding: 1em;
    color: #2c2c2f;
    background: #fffacd;
    border-top: solid 5px #ffd700;
    border-bottom: solid 5px #ffd700;
    float: left;
    width: 150px;
}
.box4 p {
    margin: 0px; 
    padding: 0px;
    font-size: 2em;
    font-weight: bold;
}

.box27 {
    position: relative;
    padding: 0.5em 1em;
    border: solid 3px #62c1ce;
    font-size: 2em;
    max-width: 750px;
    margin: 2em auto 2em !important;
    text-align: left;
    background: #fff;
}
.box27 .box-title {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #62c1ce;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.box27 p {
    margin: 0; 
    padding: 0;
}

.ai {
  padding: 1rem 2rem;
  font-size: 2rem;
  font-weight: bold;
  border-top: 4px solid #d8dcdc;
  border-right: 4px solid #666;
  border-bottom: 4px solid #333;
  border-left: 4px solid #868888;
  border-radius: 0;
  background-image: -webkit-linear-gradient(135deg, #ccc 0%, #868888 20%, #d8dcdc 34%, white 53%, #ccc 100%);
  background-image: linear-gradient(-45deg, #ccc 0%, #868888 20%, #d8dcdc 34%, white 53%, #ccc 100%);
  white-space: nowrap;
}

.registlink {
  padding: 0.5rem 1.5rem;
  font-size: 2em;
  border-radius: 100vh;
  background: #ffa500;
  white-space: nowrap;
  width: fit-content;
}

.topdisp {
  font-size: 1.5em;
  position: relative;
  padding: 0.5rem 1rem;
  color: #fff;
  border-radius: 10px;
  background: #0000cd;
}

.topdisp:after {
  position: absolute;
  bottom: -9px;
  left: 1em;
  width: 0;
  height: 0;
  content: '';
  border-width: 10px 10px 0 10px;
  border-style: solid;
  border-color: #0000cd transparent transparent transparent;
}

.circle {
    position: relative;/* ←文字の親要素に指定 */
    width: 160px;
    height: 160px; 
    background-color: #ffd700;
    border-radius: 50%; 
    margin: 0 auto;
    text-align: center !important;
    border: #b8860b solid 5px;
    white-space: nowrap;
}
.circle-inner {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-size: 2.5em;
    font-weight: bold;
}

.circle-sp {
    position: relative;/* ←文字の親要素に指定 */
    width: 80px;
    height: 80px; 
    background-color: #ffd700;
    border-radius: 50%; 
    margin: 0 auto;
    text-align: center !important;
    border: #b8860b solid 5px;
    white-space: nowrap;
}