@charset "utf-8";
:root {
  font-size: 16px;
}
*, figure {
  box-sizing: border-box;
  margin: 0;
}
html {
  min-height: 100%;
}
body {
  color: #242021;
  font: 400 1em/1.3em 'Segoe UI', Arial, sans-serif;
}
#wrapper {
  position: relative;
  max-width: 550px;
  margin: 1rem auto;
  border: solid 5px #000;
  background: #fff url('../images/bg.jpg') top left no-repeat;
  overflow: hidden;
  padding: 0;
}
p {
  padding-bottom: 1rem;
}
:is(a:link, a:visited, a:hover, a:active) {
  color: inherit;
  text-decoration: none;
}
img {
  max-width: 100%;
  height: auto;
}
h1 {
  margin: 0 0 1rem;
  font-size: 1.75em;
  line-height: 1.3;
  text-align: center;
}
h2 {
  padding: 2rem 1rem;
  font-size: 1.625em;
  line-height: 1.3;
  background: #F3702A;
  color: #fff;
  border-radius: 100%;
  position: absolute;
  top: 5rem;
  right: 1rem;
  transform: rotate(-6deg);
}
h3 {
  margin: 0 0 0.5rem;
  font-size: 2.2em;
  line-height: 1.3;
}
h3 span {
  background: #0066B3;
  color: #fff;
  padding: 0 0.5rem;
  -webkit-box-decoration-break: clone;
  -o-box-decoration-break: clone;
  box-decoration-break: clone;
}
h4 {
  margin: 0 0 1rem;
  font-size: 0.875em;
  line-height: 1.3;
}
h4 span {
  background: #F3702A;
  color: #fff;
  padding: 0 0.5rem;
  -webkit-box-decoration-break: clone;
  -o-box-decoration-break: clone;
  box-decoration-break: clone;
}
h2, p {
  text-align: center;
}
header p {
  color: #fff;
  position: absolute;
  top: 0.5rem;
  right: 1rem;
}
.ttl {
  transform: rotate(-6deg);
  margin: 4rem 2rem 3rem;
}
article {
  padding: 0 0.5rem;
}

article strong {
    font-size: 0.9em;
}
article p {
  font-size: 1.625em;
  line-height: 1.3;
}
footer {
  display: flex;
  justify-content: center;
  padding: 0 1rem 1rem;
}
@media only screen and (max-width:549px) {
  #wrapper {
    border: none;
    margin: 0 auto;
    background-image: none;
  }
  header {
    padding: 1rem;
    background: #002F67;
  }
  header p {
    position: static;
  }
  .ttl {
    transform: none;
    margin: 0;
  }
  h2 {
    position: static;
    margin: 0 auto 1rem;
    transform: none;
    padding: 1rem;
    border-radius: 0;
  }
  br {
    display: none;
  }
  article p {
    font-size: 1.25em;
  }
}