@charset "UTF-8";
*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  padding: 0;
  margin: 0;
}

body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 16px;
  line-height: 1.6;
  background: #fff;
  color: #333333;
}

img {
  max-width: 100%;
  height: auto;
}

ul,
li {
  list-style: none;
  padding: 0;
  margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}

a {
  color: inherit;
}

body {
  background: #f5f4f4;
}

.page {
  width: 750px;
  max-width: 100%;
  margin-top: 50px;
  margin-left: auto;
  margin-right: auto;
  background: #fff;
}

.inner {
  padding: 142px 137px 212px;
}

.title {
  font-size: 24px;
  font-weight: 700;
  margin-top: 45px;
}

#title1 {
  margin-top: 0;
  padding-bottom: 7px;
  border-bottom: solid 3px #3F51B5;
}

#title2 {
  padding-bottom: 5px;
  border-bottom: 3px dashed #3F51B5;
}

#title3 {
  padding-top: 8px;
  padding-bottom: 6px;
  padding-left: 10px;
  background: #3F51B5;
  color: #fff;
}

#title4 {
  padding-top: 8px;
  padding-bottom: 6px;
  padding-left: 10px;
  background: #7385E9;
  color: #fff;
  border-bottom: solid 3px #3F51B5;
}

#title5 {
  padding-left: 12px;
  border-left: solid 5px #333333;
}

#title6 {
  display: inline-block;
  background: linear-gradient(transparent 50%, #dcee39 0);
}

#title7 span {
  display: inline-block;
  background: #DCEE39;
  margin: 3px 0;
  padding: 0 3px;
}

#title8 {
  padding-top: 8px;
  padding-bottom: 6px;
  padding-left: 10px;
  background: #3F51B5;
  color: #fff;
  position: relative;
}
#title8::after {
  content: "";
  position: absolute;
  border-style: solid;
  border-width: 14px 13px 0 13px;
  border-color: yellow transparent transparent transparent;
  left: 38px;
  top: 100%;
}

#title9 {
  padding-bottom: 7px;
  border-bottom: solid 2px #3F51B5;
  position: relative;
}
#title9::after {
  content: "";
  position: absolute;
  border-bottom: solid 2px #B53F4F;
  left: 0;
  bottom: -2px;
  width: 30%;
  height: 100%;
}

#title10 {
  padding-left: 16px;
  position: relative;
}
#title10::before {
  content: "";
  position: absolute;
  height: 16px;
  width: 4px;
  background: #3F51B5;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}

#title11 {
  text-align: center;
  position: relative;
}
#title11::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -21px;
  /*線の上下位置*/
  display: inline-block;
  width: 60px;
  /*線の長さ*/
  height: 4px;
  /*線の太さ*/
  transform: translateX(-50%);
  /*位置調整*/
  background-color: #3F51B5;
  /*線の色*/
}

#title12 {
  padding-left: 30px;
  position: relative;
}
#title12::before {
  content: "";
  display: block;
  position: absolute;
  background: transparent url(../img/icon-check.png) no-repeat top center/contain;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 25px;
  height: 15px;
}

#title13 {
  position: relative;
  display: inline-block;
  padding: 0 30px 0 0;
}
#title13::after {
  content: "";
  position: absolute;
  background: transparent url(../img/icon-glass.png) no-repeat top center/contain;
  top: -4px;
  right: 2px;
  transform: translateY(-50%);
  width: 18.98px;
  height: 21.83px;
}

#title14 {
  text-align: center;
  display: inline-block;
  position: relative;
}
#title14::before, #title14::after {
  content: "";
  position: absolute;
  width: 3px;
  height: 32px;
  background: #3F51B5;
  top: 50%;
  transform: translateY(-50%);
}
#title14::before {
  left: 0;
  transform: translateY(-50%) rotate(-10deg);
}
#title14::after {
  right: 0;
  transform: translateY(-50%) rotate(10deg);
}

#title15 {
  display: flex;
  align-items: center;
}
#title15::before, #title15::after {
  content: "";
  height: 3px;
  background: #3F51B5;
  flex-grow: 1;
}
#title15::before {
  margin-right: 12px;
}
#title15::after {
  margin-left: 12px;
}

#title16 {
  background: repeating-linear-gradient(-45deg, #a7baff, #a7baff 15px, #7386e9 0, #7386e9 30px);
  display: inline-block;
}

#title17 {
  position: relative;
  display: inline-block;
}
#title17 span {
  position: relative;
  z-index: 3;
  display: inline-block;
}
#title17::after {
  content: "";
  background: repeating-linear-gradient(-45deg, #a7baff, #a7baff 15px, #7386e9 0, #7386e9 30px);
  position: absolute;
  bottom: 0;
  left: 0;
  height: 50%;
  width: 100%;
  z-index: 2;
}