@charset "UTF-8";

html{
  background: #b0c4de;
  margin: 0;
  padding: 0;
  height: 100%;
}

body{
  width: 800px;
  margin: 0 auto;
  padding: 20px;
  background: #fff;
  font-family: 'Noto Serif JP', serif;
}

p.link{
  text-align: right;
}

h1{
  position:relative;
  padding:2px 48px;
  border-bottom:1px solid #62A1CB;
  font-weight:lighter;
  text-align: center;
  font-family: 'Zen Old Mincho', serif;
  font-size: 200%;
}
h1:first-letter{color:#62A1CB;}
h1:before, h1:after{
	content:"";
	display:block;
	position:absolute;
}
h1:before{
	width:32px;height:32px;
	border-radius:50%;
	border:1px solid #ddd;
	bottom:-16px;
	left:8px;
}
h1:after{
	height:64px;
	border-left:1px solid #ddd;
	bottom:-32px;
	left:24px;
}

h2 {
  padding: 0.8rem 1.5rem;
  border-left: 4px solid #000;
}

h3{
  font-family: sans-serif;
  font-size: 160%;}

p{
  margin: 0 0 30px 0;
}

ul{
  list-style-type: none;
}

ol{
  margin: 0 0 15px 0;
}

dl{
  margin: 0 0 15px 0;
}

dd{
  margin: 0 15px;
  padding: 0 0;
}

dt{
  font-family: sans-serif;
  font-size: 130%;
}

footer{
  text-align: right;
}

img{
  width: 150px;
}

/* 横並び */

.flex {
  display: flex; /*横並び*/
  display:flex;
  align-items: center;
}
.flex .image {
  margin: 0;
  padding: 0;
  vertical-align: middle;
}
.flex .text {
  margin: 0 0 0 20px;
  padding: 0;
  vertical-align: middle;
}

.name{
  font-family: sans-serif;
}

.gyou{
  display:inline-block;
  line-height: 1;
}

@media screen and (max-width:768px) {
  body{
    width: auto;
  }
  p{
    padding: 0 10px;
  }
  dt{
    padding: 0 15px;
  }
  dd{
    margin: 0 0 0 30px;
  }
  img{
    display: none;
  }
  h1{
      font-size: 120%;
  }
}