*{
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
}

ul {
  list-style: none;
}

header {
  width: 100%;
  margin: auto;
  position: fixed;
  background-color: white;
  border-bottom: solid 2px #253685;
  z-index: 10;
  display: flex;
  justify-content: space-between;
  font-size: 120%;
}

.header-670 {
  display: none;
}



header a {
  text-decoration: none;
  display: block;
}

.header-logo {
  width: 30%;
}

.header-name {
  width: 30%;
}

.header-name p {
  font-weight: bold;
}

.header-contact {
  display: block;
  padding: 1% 0;
  width: 20%;
  background-color: #253685;
  text-align: center;
  font-size: 125%;
  font-weight: bold;
}

.header-contact a {
  color: white;
  text-decoration: none;
  display: block;
}

.header-contact:hover{
  opacity: 0.5;
}
.header-index {
  padding: 1% 0;
  text-align: center;
  width: 20%;
  background-color: white;
  font-size: 125%;
  font-weight: bold;
}

.header-index a {
  color: #253685;
}

.top-wrapper {
  background-image: url("https://kay-rec-souzoku.com/image/kay-bg-white.jpg");
  background-size: cover;
  height: 800px;
}

.title {
  position: absolute;
  top:20%;
  right: 0%;
  background-color: rgba(37,54,133,0.8);
  color: white;
  line-height: 300%;
  padding: 1%;

}

.title p {
  font-size: 125%;
  padding: 1%;
}











.sozoku-wrapper {
  background-color: #253685;
  text-align: center;
  color: white;
  padding: 10% 0;
}

.sozoku-wrapper h2 {
  padding: 3% 0;
  font-size: 35px;
}

.sozoku-list  {
  width: 30%;
  margin: auto;
}

.sozoku-list a {
  text-decoration: none;
}
.sozoku-list a :hover {
  opacity: 0.5;
}

.sozoku-list li {
  color: white;
  text-align: left;
  list-style: none;
  line-height: 200%;
  font-size: 200%;

}
.content {
  width: 100%;
  margin: auto;
  padding: 10% 0;
  font-size: 25px;

}
.content h2 {
  text-align: center;
  font-size: 35px;
}

.procedure-list {
  width: 40%;
  margin:auto;
}

.index-content {
  padding: 8% 0;
  display: flex;
}

.circle {
  background-color: #253685;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  text-align: center;
  font-weight: bold;
}

.circle p {
  line-height: 80px;
  color: white;
  font-size: 20px;
}
.details p {
  padding-top: 10px;
  padding-left: 10px;
  font-weight: bold;
}

.details small {
  font-weight: lighter;
}

.range {
  width: 80%;
  margin: auto;
}
.range p {
  text-align: center;
  padding-top: 5%;
}

.range span {
  font-weight: bold;
  width: 100%;
  margin: auto;
}

.sozoku-range {
  padding: 5% 0;
  width: 100%;
  margin: auto;
  display: flex;
  justify-content: space-between;
}

.sozoku-range-content  {
  width:30%;
  background-color: #253892;
}

.sozoku-range-content p {
  padding: 5% 0;
  font-weight: bold;
  color: white;
}

.sozoku-range-content-img img{
  width: 100%;
}


.yuigonsho {
  width: 80%;
  margin: auto;
}

.yuigonsho-wrapper {
  display: flex;
  justify-content:space-between;
  padding: 10% 0;
}

.yuigonsho-content {
  width: 30%;
  height: 400px;
  margin: auto;
  background-color: #253892;
  color: white;
}

.yuigonhso-title {
  width: 80%;
  margin: auto;
}

.yuigonsho-title h3 {
  text-align: center;
  padding: 5% 0;
}

.yuigonsho-text {
  width: 90%;
  margin: auto;
  padding: 10% 0;
}

.yuigonsho-postscript-wrapper {
  padding: 5% 0;
}

.square-wrapper {
  width: 100%;
  margin: auto;
  display: flex;
  padding: 1% 0;
}

.square {
  width: 0;
height: 0;
border-style: solid;
border-width: 25px 0 25px 43.6px;
border-color: transparent transparent transparent #253892;

}
.square-wrapper p {
  padding-left: 10px;
  padding-top: 8px;
  font-weight:bold;
}

.yuigonsho-postscript {
  width: 80%;
  margin: auto;

}

.heritage-division {
  width: 80%;
  margin:auto;
}

.heritage-division-wrapper {
  padding: 5% 0;
  width: 100%;
  margin: auto;
  display: flex;
  text-align: center;
}

.heritage-division-content {
  width: 30%;
  height: 450px;
  margin: auto;
  background-color: #253892;

}

.heritage-division-content p {
  padding: 5% 0;
  color: white;
  font-weight: bold;
  }


.heritage-division-content-img img {
  width: 100%;
}

.heritage-division-content-text {
  width: 90%;
  margin: auto;

}

.heritage-division-content-text p {
  font-weight: normal;
  font-size: 80%;
  text-align: left;
}
.beneficiary-wrapper {
  width: 95%;
  margin: auto;
}
.beneficiary-content {
  padding: 5% 0;
}
.beneficiary-content h3{
  background-color: #253892;
  width: 50%;
  padding-left: 5%;
  color: white;

}

.beneficiary-content-text {
  padding: 5% 0;
  line-height: 200%;
}
.beneficiary-content-text small{
  text-decoration: underline;
}
.beneficiary-content-text span {
  font-size: 80%;

}

.heritage-kind {
  width: 80%;
  margin: auto;
}
.heritage-kind-wrapper {
  display: flex;
  width: 65%;
  margin: auto;
  padding: 5% 0;
}

.heritage-kind-subutitle p {
  padding-top: 13px;
  padding-right: 30px;
  font-weight: bold;
}

.heritage-kind-list {
  padding-left: 50px;
}

.heritage-kind-list li {
  line-height: 250%;
  border-bottom: dashed 2px #253892;
}

.padding-left {
  padding-left: 125px;
}
.heritage-kind-text-wrapper {
  width: 65%;
  margin: auto;
  padding: 5% 0;
}

.heritage-kind-text p {
  font-size: 90%;
  border-bottom: dashed 2px #253892;
}

.heritage-kind-postscript {
  width: 65%;
  margin: auto;
  color: red;
  font-weight: bold;
}

.evaluation {
  width: 80%;
  margin: auto;
}

.evaluation-content {
  padding: 5% 0;
}
.evaluation-content h3{
  width: 100%;
  color: black;
  border-bottom: solid 2px #253892;

}

.evaluation-content-text {
  padding: 5% 0;
  line-height: 200%;
}

summary {
  position: relative;
  padding: 10px 30px;
  cursor: pointer;
  background-color: #253892;
  color: white;
  width: 60%;
}

summary::-webkit-details-marker {
  position: absolute;
  color: transparent;
}

summary:hover,
details[open]summary{
  background-color: blue;
}

summary::after {
  content: '+';
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translateY(-50%);
  transition: transform .5s;
}

summary:hover {
  opacity: 0.5;
}

.answer-text small {
  text-decoration: underline;
}

details[open]summary::after{
  transform: translateY(-50%)rotate(45deg);
}

.answer {
  padding: 20px 30px;
  width: 60%;

}
details[open].answer {
  animation:slidein.5s ease-in-out;
}
@keyframes slidein {
  0%{
    opacity: 0;
  }
  100% {
    opacity: 1;
  }

}

.evaluation-axis-content {
  padding: 1% 0;
}

.evaluation-axis-content span {
  color: orange;
  font-weight: bold;
}

.evaluation-method   {
  display: flex;
  flex-wrap: wrap;
  padding: 2% 0;
}

.evaluation-method dt  {
  padding-right: 20px;
}

.evaluation-method dd,span {
  border-bottom: dashed 2px #253892;
}

.evaluation-content-text i {
  font-weight: bold;
  font-style: normal;
  border-bottom: solid 2px #253892;
}

.evaluation-content table {
  width: 100%;
  margin: auto;
  margin: 5% 0;
}
.table-header th {
  color: white
}

.postscript-red {
  width: 100%;
  margin: auto;
}

.zoyo {
  width: 80%;
  margin: auto;
}

.zoyo-method-list-wrapper {
  padding: 5% 0;
  width: 100%;
  margin: auto;
}

.zoyo-method-list-wrapper h3{
  width: 100%;
  color: black;
  border-bottom: solid 2px #253892;

}

.zoyo-method-list-wrapper li {
  padding: 2% 0;
}

.zoyo-method-list-wrapper ul {
  padding: 1% 0;
  width: 100%;
  margin: auto;
}

.zoyo-method-text {
  padding: 2% 0;
}
.zoyo-method-text p {
  padding: 1% 0;
}

.zoyo-method-text span {
  color: red;
  border-bottom: none;
}

.calculation {
  width: 80%;
  margin: auto;
}

.calculation-wrapper {
  width: 100%;
  margin: auto;
  padding: 5% 0;

}

.calculation-wrapper h3{
  width: 100%;
  color: black;
  border-bottom: solid 2px #253892;

}

.calculation-flow ul {
  padding: 5% 0;
}

.calculation-flow li {
  padding: 2% 0;
}

.tax-table th {
  color: white;
  text-align: center;
}

.tax-table td {
  width: 100%;
  margin: auto;
  padding: 2% 0;
  padding-left: 2%;
}


footer {
  background-color: #253892;
  color: white;
  display: flex;
}

.footer-content {
  width: 90%;
  margin: auto;
  padding: 2% 0;
}

.footer-address {
  line-height: 200%;
}

.footer-address h4 {
  font-size: 125%;
}

.banner-list-wrapper {
  width: 30%;
}

.banner img {
  width: 100%;

}

.footer-content a {
  text-decoration: none;
  color: white;
  font-size: 100%;
}

.footer-index-list-wrapper {
  width: 95%;
  margin: auto;
  display: flex;
  justify-content: space-between;
}


.footer-index-list a {
  color: white;
  text-decoration: none;
  line-height: 200%;
}

.footer-index-list a:hover {
  opacity: 0.5;
}

.footer-index-list-left {
  padding-left: 3%;
}

.copy-right {
  padding: 1% 0;
}

.footer-670 {
  display: none;
}
