@charset "UTF-8";/* CSS Document */html {  font-size: 62.5%;  /* 16px * 62.5% = 10px */  width: 100%;  scroll-behavior: smooth;}:root {  --blue: #263e80;  --green: #6ab547;}body {  color: #333333;  /* RGB */  background-color: #ffffff;  font-family: "Zen Old Mincho", serif;  font-weight: 400;  font-style: normal;  font-size: 1.6rem;  letter-spacing: 0.04rem;  line-height: 2.4;  text-align: center;}a {  color: #333333;}a:hover {  opacity: 0.7;}a.clarity:hover {  opacity: 1;}*,*:before,*:after {  box-sizing: border-box;}img {  width: 100%;  display: block;}.pc_none {  display: block;}.sp_none {  display: none;}.is-hide {  opacity: 0;  visibility: hidden;  transition: opacity 0.3s ease, visibility 0.3s ease;}.white {  color: #ffffff;}.blue {  color: var(--blue);}.green {  color: var(--green);}.red {  color: #ff0000;}.left {  text-align: justify;}.right {  text-align: right;}.center {  text-align: center;}.ft_60 {  font-size: min(12.5vw, 6.0rem);}.ft_50 {  font-size: clamp(3.0rem, 10vw, 5.0rem);}.ft_34 {  font-size: clamp(2.4rem, 7vw, 3.4rem);}.ft_30 {  font-size: clamp(2.4rem, 6.25vw, 3.0rem);}.ft_28 {  font-size: clamp(2.0rem, 5.8vw, 2.8rem);}.ft_22 {  font-size: clamp(1.6rem, 4.5vw, 2.2rem);}.ft_20 {  font-size: 2.0rem;}.ft_16 {  font-size: 1.6rem;}.bold {  font-weight: 700;}h2,h3,h4,h5 {  line-height: 1.5;}.fadeInUpTrigger,.fadeInRightTrigger,.fadeInleftTrigger {  opacity: 0;}.flex {  display: flex;  flex-direction: column;  gap: 40px;}.flex.row {  flex-direction: row;  justify-content: space-between;}header {  width: 100%;  height: 60px;  position: absolute;  top: 0;  left: 0;  z-index: 50;  background-size: cover;  z-index: 100;}.header_inner {  width: 100%;  height: 100%;  display: flex;  justify-content: space-between;  align-items: flex-start;  padding: 4px 0 4px 2vw;}header .logo {  max-width: 290px;  width: 60%;}.header_right {  display: flex;  justify-content: space-between;  align-items: center;}/* ham_menu */.ham_btn {  position: fixed;  cursor: pointer;  width: 60px;  height: 60px;  z-index: 999;  margin: 0;  top: 0;  right: 0;  background-color: var(--blue);}.ham_btn span {  display: inline-block;  transition: all .4s;  position: absolute;  left: 15px;  height: 1px;  background: #ffffff;  width: 30px;}.ham_btn span:nth-of-type(1) {  top: 20px;}.ham_btn span:nth-of-type(2) {  top: 30px;}.ham_btn span:nth-of-type(3) {  top: 40px;}.ham_btn.active span:nth-of-type(1) {  top: 23px;  left: 12px;  transform: translateY(6px) rotate(-45deg);  width: 40px;}.ham_btn.active span:nth-of-type(2) {  opacity: 0;}.ham_btn.active span:nth-of-type(3) {  top: 34px;  left: 13px;  transform: translateY(-6px) rotate(45deg);  width: 40px;}.nav_wrap {  position: fixed;  z-index: 100;  top: 0;  right: -120%;  width: 100%;  height: 100%;  transition: all 0.6s;  display: flex;  align-items: flex-start;  justify-content: center;  background-color: var(--blue);  overflow-y: auto;  padding: 60px 20px;}.nav_wrap ul {  width: 100%;  display: flex;  flex-direction: column;  justify-content: space-between;  margin-bottom: 20px;}.nav_wrap li {  list-style: none;  text-align: center;  font-size: 1.6rem;  line-height: 1;  padding: 12px 0;  margin-bottom: 8px;  border-bottom: 1px solid #ffffff;}.nav_wrap li a {  color: #ffffff;  text-decoration: none;  padding: 10px;  display: flex;  flex-direction: column;  align-items: center;  gap: 10px;}.nav_wrap.show {  right: 0;}.nav_wrap nav.sp_nav {  display: flex;  flex-direction: column;  justify-content: space-between;  width: 100%;}.tel a {  color: #ffffff;  display: inline-block;}.tel a p {  position: relative;  padding-left: 45px;}.tel a p::before {  content: "";  width: min(6.25vw, 30px);  aspect-ratio: 1 / 1;  background-image: url(../img/tel_w.png);  background-size: contain;  background-repeat: no-repeat;  background-position: center bottom;  position: absolute;  top: 50%;  left: 0;  transform: translateY(-50%);}/* MV */.MV {  position: relative;}.MV_text {  width: 90%;  position: absolute;  left: 5%;  bottom: 10%;  text-align: justify;  line-height: 1.5;  font-weight: 900;  text-shadow: 0 0 6px rgba(0, 0, 0, 0.4);  font-size: min(6.4vw, 7.0rem);  color: #ffffff;}.MV_text span {  font-size: min(4.5vw, 5.0rem);}/* 共通 */section {  position: relative;  padding: 40px 0 100px;}.section_inner {  width: 90%;  margin: 0 auto;}.section_ttl {  padding-bottom: 40px;  font-weight: 900;}#message h3 {  padding-bottom: 20px;}#message .content {  padding-right: min(12.5vw, 7.0rem);}#message .deco {  width: 20%;  max-width: 70px;  position: absolute;  top: 1vw;  right: 1vw;}#commitment .content_textWrap {  width: 90%;  margin: 0 auto;}#commitment .content_textWrap h3 {  padding-bottom: 20px;}#commitment .content02 {  width: 90%;  margin: 40px auto;}#commitment .content02 .content_itemWrap {  gap: 10px;  position: relative;  z-index: 2;}#commitment .content02 .content_text {  padding: 40px 0 60px;  position: relative;  z-index: 1;}#commitment .content02 .content_text::before {  content: "";  width: 106%;  height: 150%;  border: 3px solid var(--blue);  position: absolute;  bottom: 0;  left: 50%;  transform: translateX(-50%);  z-index: 1;}.section_ttl {  display: flex;  flex-direction: column;  gap: 20px;}.section_ttl img {  width: 80%;  max-width: 276px;  margin: 0 auto;  word-break: keep-all;}#business .content {  position: relative;  padding-bottom: 40px;}#business .content::before {  content: "";  width: calc(100% / 9 * 10);  height: 80%;  background-color: #eafee0;  position: absolute;  bottom: 0;  left: 50%;  transform: translateX(-50%);}#business .content_item {  z-index: 2;}#business .content_item h3 {  padding: 10px 0;  display: flex;  flex-direction: column;  gap: 10px;  font-size: clamp(2.0rem, 5vw, 2.4rem);}#business .content_item h3 span {  font-size: 1.6rem;}#works .content {  position: relative;  padding-bottom: 40px;}#works .content::before {  content: "";  width: calc(100% / 9 * 10);  height: 80%;  background-color: #e7f4fd;  position: absolute;  bottom: 0;  left: 50%;  transform: translateX(-50%);}#works .content_item {  z-index: 2;}#works .content_item h3 {  padding: 10px 0;  display: flex;  flex-direction: column;  gap: 10px;  font-size: clamp(2.0rem, 5vw, 2.4rem);}.more a {  width: 80%;  max-width: 322px;  height: 57px;  background-color: var(--green);  color: #ffffff;  font-size: 2.2rem;  font-weight: 700;  margin: 40px auto;  display: flex;  align-items: center;  justify-content: center;  padding-right: 120px;  position: relative;  line-height: 1;}.more a::after {  content: "";  width: min(50%, 111px);  aspect-ratio: 111/9;  background-image: url(../img/arrow.png);  background-size: contain;  background-repeat: no-repeat;  background-position: center bottom;  position: absolute;  top: 50%;  right: 30px;  transform: translateY(-50%);  z-index: 1;}.more.blue a {  background-color: var(--blue);}#recruit {  background-color: #787878;  color: #ffffff;  position: relative;  padding-top: 80px;  margin-top: min(50vw, 150px);}#recruit .deco {  position: absolute;  bottom: 101%;  left: 0;  max-width: 416px;}#recruit::before {  content: "";  width: 100%;  height: min(90%, 1092px);  background-image: url(../img/recruit_bg.png);  background-size: 1920px;  background-repeat: no-repeat;  background-position: 80% 0;  position: absolute;  top: 0;  left: 0;}#recruit .section_inner {  position: relative;  z-index: 2;}#recruit .section_ttl {  position: relative;  z-index: 2;}#recruit h3 {  word-break: keep-all;  padding-bottom: 30px;}#recruit .content {  padding-bottom: 40px;}#recruit .content_itemWrap {  align-items: center;  margin: 40px 0 80px;  justify-content: center;}#recruit .content_item {  border: 1px solid #ffffff;  max-width: 350px;  width: 100%;  padding: 20px 10px;  font-size: 1.8rem;  text-align: left;  display: flex;  justify-content: center;}#company {  padding-top: 120px;  overflow: hidden;}#company h2 span {  word-break: keep-all;}#company .content {  gap: 60px;  position: relative;  padding-bottom: 60px;}#company .content::before {  content: "";  width: calc(100% + 10vw);  height: 20%;  background-color: #eafee0;  position: absolute;  bottom: 0;  left: 50%;  transform: translateX(-50%);}dl {  width: 100%;  margin: 40px auto 0;  font-weight: 700;}dl a {  color: #333333;}dt,dd {  padding: 14px 2%;  border-bottom: 1px solid #333333;}#contact {  background-image: url(../img/contact_bg.png);  background-size: cover;  background-position: 60% top;  padding: 60px 0;}#contact .section_inner {  display: flex;  flex-direction: column;  align-items: center;  gap: 40px;}.contact_btnWrap {  display: flex;  flex-direction: column;  gap: 40px;  margin: 40px auto;  width: 100%;  max-width: 389px;}.contact_btn a {  position: relative;  width: 100%;  display: block;}.contact_btn a:hover {  opacity: 1;}.contact_btn a::after {  content: '';  width: 100%;  height: 100%;  background-color: rgba(255, 255, 255, 0);  position: absolute;  transition: background-color 0.5s ease;  z-index: 10;  top: 0;  left: 0;}.contact_btn a:hover::after {  background-color: rgba(255, 255, 255, 0.2);  transition: background-color 0.5s ease;}#access {  padding: 0;}#access .map {  height: min(80vw, 450px);  width: 100%;}#access iframe {  height: 100%;  width: 100%;  display: block;}footer {  padding: 20px 0 0;  font-size: 1.8rem;}.footer_inner {  width: 90%;  max-width: 480px;  margin: 0 auto;  position: relative;  z-index: 10;}.footer_inner--left {  gap: 0px;}.footer_logo {  width: 80%;  max-width: 300px;  margin: 0 auto 10px;}footer .tel a {  color: #333333;}footer .tel a p::before {  background-image: url(../img/tel.png);}footer ul {  width: 80%;  margin: 0 auto 40px;  display: flex;  flex-direction: column;  align-items: flex-start;}#go_top {  position: fixed;  bottom: 20px;  right: 20px;  width: 40px;  z-index: 50;}.cr {  padding: 10px;  background-color: var(--blue);  font-weight: 700;  color: #ffffff;}/* pcスタイル */@media screen and (min-width: 960px) {  .sp_none {    display: block;  }  .pc_none {    display: none;  }  header {    position: fixed;    height: 120px;    line-height: 1.2;    background-color: rgba(255, 255, 255, 0.4);    box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.1);  }  .header_inner {    gap: 20px;    position: relative;    align-items: center;    z-index: 5;    padding: 4px 0 0 2vw;  }  header .logo {    width: 30%;    max-width: 690px;  }  .header_right {    display: flex;    flex-direction: column;    align-items: flex-end;    justify-content: space-between;    width: 65%;    max-width: 1070px;    height: 100%;    padding-top: 8px;    font-weight: 700;  }  .header_right--upper {    display: flex;    align-items: center;    gap: 10px;    padding-right: 20px;  }  header .tel a {    line-height: 1;    color: #333333;  }  header .tel a p::before {    background-image: url(../img/tel.png);    top: 50%;    left: 2%;    transform: translateY(-50%);    z-index: 1;  }  .header_right--bottom.flex {    width: 100%;    align-items: center;    justify-content: flex-end;  }  .pc_nav {    width: calc(100% - 200px);    max-width: 500px;  }  .pc_nav ul {    width: 100%;    font-size: 18px;    display: flex;    align-items: flex-end;    justify-content: space-between;  }  .pc_nav ul li a {    display: flex;    flex-direction: column;    align-items: center;    justify-content: flex-end;    gap: 8px;    height: 100%;    color: var(--blue);    line-height: 1;  }  header .mail a {    position: relative;    color: #ffffff;    line-height: 1.5;    background-color: var(--blue);    height: 60px;    display: flex;    align-items: center;    justify-content: center;    width: 100%;    min-width: 200px;  }  header .mail a p {    position: relative;    padding-left: 35px;  }  header .mail a p::before {    content: "";    position: absolute;    left: 0;    height: 20px;    width: 27px;    top: 50%;    background-image: url(../img/mail.png);    transform: translateY(-50%);    background-size: contain;    background-repeat: no-repeat;  }  header .mail_btn a:hover {    opacity: 1;  }  .MV_text {    width: 90%;    max-width: 1280px;    margin: 0 auto;    left: 50%;    transform: translateX(-50%);    text-align: center;  }  .MV_text span {    display: block;  }  .flex {    flex-direction: row;    justify-content: space-between;  }  .flex.reverse {    flex-direction: row-reverse;  }  section {    padding: 100px 0 120px;    overflow: hidden;  }  .section_inner {    max-width: 1280px;  }  #message .content {    max-width: 1000px;    margin: 0 auto;    padding: 0;  }  #message .deco {    top: 2vw;    right: 2vw;  }  #commitment .flex {    flex-direction: row-reverse;    align-items: center;  }  #commitment .content_textWrap {    width: 45%;  }  #commitment .content_textWrap p {    margin-right: 5%;    max-width: 630px;  }  #commitment .content_img {    width: 55%;  }  #commitment .content02 {    max-width: 1600px;    margin: 80px auto;  }  #commitment .content02 .content_text {    display: flex;    justify-content: flex-end;    padding-right: 8%;    width: auto;    margin: 0 5% 0 auto;    padding: 60px 0;    width: 80%;  }  #commitment .content02 .content_text::before {    display: none;  }  #commitment .content02 .content_text p {    position: relative;    line-height: 1.5;  }  #commitment .content02 .content_text p::before {    content: "";    width: 120%;    height: calc(150% + 160px);    border: 3px solid var(--blue);    position: absolute;    bottom: -70px;    left: 50%;    transform: translateX(-50%);    z-index: 1;  }  #business .section_inner,  #works .section_inner,  #company .section_inner {    max-width: 1400px;  }  #business .section_ttl,  #works .section_ttl,  #company .section_ttl {    position: relative;    padding-bottom: 0;    margin-bottom: 60px;  }  #business .section_ttl img,  #works .section_ttl img {    width: 100%;    max-width: 1175px;    margin: 0 auto 0 0;  }  #company .section_ttl img {    width: 100%;    max-width: 1280px;    margin: 0 auto 0 0;  }  #business .section_ttl span,  #works .section_ttl span,  #company .section_ttl span {    position: absolute;    top: 50%;    transform: translateY(-50%);    left: max(27%, 280px);    word-break: keep-all;    text-align: left;  }  #business .content::before,  #works .content::before,  #company .content::before {    width: 100vw;    height: 50%;    left: 50%;    transform: translateX(-50%);  }  #recruit {    padding-bottom: 40px;  }  #recruit::before {    content: "";    width: 100%;    height: 100%;    background-image: url(../img/recruit_bg.png);    background-size: cover;    background-repeat: no-repeat;    background-position: center;    position: absolute;    top: 0;    left: 0;  }  #recruit .section_inner {    max-width: 1100px;    display: flex;    flex-direction: column;    gap: 40px;  }  #recruit h3 {    padding-bottom: 40px;    position: relative;    z-index: 2;  }  #recruit .content_itemWrap {    gap: 60px;    margin: 40px 0;  }  #recruit .deco {    top: 10%;    bottom: auto;    left: auto;    right: 60%;  }  #company .content {    flex-direction: row-reverse;    justify-content: space-between;    align-items: center;    max-width: 1280px;    margin: 0 auto;    padding-bottom: 80px;  }  #company .content dl {    width: 50%;    max-width: 480px;    margin: 0 auto;  }  #company .content dl .description-item {    display: flex;  }  #company .content dt {    width: 120px;  }  #company .content dd {    width: calc(100% - 120px);  }  #company .content .content_img {    width: 50%;  }  .contact_btnWrap {    flex-direction: row;    justify-content: center;    max-width: none;  }  .footer_inner {    max-width: none;    width: 100%;    padding: 10px 0 0 20px;    justify-content: flex-start;    align-items: center;  }  .footer_inner--left {    flex-direction: column;    justify-content: center;    gap: 0;  }  .footer_logo {    max-width: 630px;  }  footer nav {    width: 100%;    max-width: 760px;  }  footer ul {    width: 100%;    margin: 0 auto 40px;    display: flex;    justify-content: space-between;    flex-direction: row;  }}.u_mv .MV_ttl {  position: absolute;  top: 60%;  left: 50%;  transform: translate(-50%, -50%);  color: #ffffff;  font-weight: 900;  font-size: clamp(3.0rem, 8vw, 7.0rem);}#business_wrapper .section_inner {  padding: 40px 0 40px}#business_wrapper .section_inner:first-of-type h4 {  padding-bottom: 20px;}#business_wrapper .content {  padding-bottom: 60px;}#business_wrapper .content_textWrap {  display: flex;  flex-direction: column;  gap: 20px;}#business_wrapper .content_textWrap h4 {  text-align: left;}/* pcスタイル */@media screen and (min-width: 960px) {  #business_wrapper .section_inner:first-of-type {    max-width: 1000px;  }  #business_wrapper .section_inner:first-of-type h4 {    padding-bottom: 40px;    text-align: center;  }  #business_wrapper .content {    align-items: center;  }  #business_wrapper .content_textWrap {    width: 65%;  }  #business_wrapper .content_img {    width: 35%;  }  #business_wrapper .content {    padding-bottom: 100px;  }}#company_01 .section_inner {  padding: 40px 0 40px}#company_01 .section_inner h4 {  padding-bottom: 40px;  text-align: left;}#company_01 .name {  padding: 20px 0;}#company_01 .name span {  font-size: 2.0rem;  padding-right: 20px;}#company_01 .content {  padding-bottom: 60px;  gap: max(40px, 3vw);}#company_01 .map {  width: 100%;  height: min(80vw, 450px);  margin-bottom: 80px;}#company_01 .map iframe {  width: 100%;  height: 100%;  display: block;}#company_01 .feature .content_textWrap {  display: flex;  flex-direction: column;  gap: 20px;}/* pcスタイル */@media screen and (min-width: 960px) {  #company_01 .section_inner h4 {    text-align: center;  }  #company_01 .content>* {    width: 50%;  }  #company_01 .section_inner:nth-of-type(2) p {    padding-bottom: 40px;  }  #company_01 .content dl {    width: 50%;    max-width: 480px;    margin: 0 auto;  }  #company_01 .content dl .description-item {    display: flex;  }  #company_01 .content dt {    width: 120px;  }  #company_01 .content dd {    width: calc(100% - 120px);  }  #company_01 .map {    margin-bottom: 120px;  }  #company_01 .feature .content {    margin: 40px auto;  }  #company_01 .feature .content_textWrap {    width: 60%;  }  #company_01 .feature .content_img {    width: 40%;  }}#works_01 .section_inner {  padding: 40px 0 40px}#works_01 .section_inner h4 {  padding-bottom: 40px;  text-align: left;}#works_01 .content_itemWrap {  margin: 40px 0;  display: grid;  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));  gap: min(5vw, 40px) min(3vw, 40px);}/* モーダル */.modal {  display: none;  position: fixed;  z-index: 9999;  left: 0;  top: 0;  width: 100%;  height: 100%;  overflow: auto;  background-color: rgba(0, 0, 0, 0.7);}.modal-content {  position: relative;  margin: 15% auto;  width: 80%;  background-color: #fefefe;  padding: 10px;}.modal-close {  position: absolute;  top: -25px;  right: 0px;  font-size: 20px;  cursor: pointer;  font-weight: 900;  color: #ffffff;  line-height: 1;}@media screen and (min-width: 960px) {  #works_01 .section_inner h4 {    text-align: center;  }  .modal-content {    padding: 20px;  }  .modal-close {    position: absolute;    top: -50px;    right: 0px;    font-size: 40px;    cursor: pointer;    font-weight: 900;    color: #ffffff;    line-height: 1;  }}#recruit_01 .logo_img {  width: 20%;  max-width: 100px;  margin: 0 auto;}#recruit_01 .content {  display: flex;  flex-direction: column;  gap: 20px;  margin: 40px auto;  text-align: left;  font-weight: 700;  max-width: 1000px;}#recruit_01 .content h4 {  position: relative;  padding-left: 20px;}#recruit_01 .content h4::before {  content: "";  width: 10px;  height: 100%;  background-color: var(--blue);  position: absolute;  top: 0;  left: 0;}#recruit_01 .content h5.bg {  background-color: var(--blue);  color: #ffffff;  padding: 4px 10px;  text-align: left;  font-size: 2.0rem;}.table01 {  width: 100%;  max-width: 1000px;  border: 1px solid #787878;  border-bottom: none;  text-align: left;  font-size: 1.8rem;  max-width: 600px;  margin: 0 auto 40px;  line-height: 1.5;}.table01 tr {  width: 100%;  display: flex;  flex-wrap: wrap;  border-bottom: 1px solid #787878;}.table01 th {  background-color: #e7f4fd;  padding: 10px 20px;  border-bottom: 1px solid #787878;  width: 100%;}.table01 td {  padding: 10px 20px;  width: 100%;}#recruit_faq .content_itemWrap {  margin: 40px 0;  text-align: left;  line-height: 1.5;}#recruit_faq .content_itemWrap dt {  position: relative;  padding-left: 35px;  background-color: var(--blue);  color: #ffffff;  border-bottom: none;  font-size: 1.8rem;  text-align: justify;}#recruit_faq .content_itemWrap dt::before {  content: "Q.";  font-size: 2.0rem;  position: absolute;  top: 11px;  left: 12px;  z-index: 1;}#recruit_faq .content_itemWrap dd {  position: relative;  padding-left: 35px;  border: 1px solid #787878;  text-align: justify;}#recruit_faq .content_itemWrap dd::before {  content: "A.";  font-size: 2.0rem;  position: absolute;  top: 11px;  left: 12px;  z-index: 1;}@media screen and (min-width: 960px) {  .table01 {    width: 100%;    max-width: 1000px;  }  .table01 tr {    width: 100%;    display: flex;    flex-wrap: nowrap;    border-bottom: 1px solid var(--blue);  }  .table01 th {    width: 30%;    padding: 20px;    border-bottom: none;    border-right: 1px solid var(--blue);  }  .table01 td {    width: 100%;    padding: 20px;  }  #recruit_faq .content_itemWrap {    flex-direction: column;    max-width: 1000px;    margin: 60px auto;  }  #recruit_faq .content_itemWrap dt {    padding: 20px 40px 20px 50px;  }  #recruit_faq .content_itemWrap dt::before {    top: 18px;    left: 22px;  }  #recruit_faq .content_itemWrap dd {    padding: 20px 40px 20px 50px;    font-size: 1.8rem;  }  #recruit_faq .content_itemWrap dd::before {    top: 18px;    left: 22px;  }}.privacypolicy {  height: 180px;  overflow-y: scroll;  font-size: 1.4rem;  padding: 20px 10px;  line-height: 1.5;  text-align: justify;  margin-bottom: 40px;}.tabs {  display: flex;  flex-wrap: wrap;  gap: 4px;  margin: 60px auto;  max-width: 1000px;}.tab_label {  color: #ffffff;  background-color: #dcdcdc;  font-weight: bold;  position: relative;  z-index: 20;  cursor: pointer;  padding: 6px 0;  border-radius: 30px 30px 0 0;  width: calc((100% - 4px)/ 2);  margin-bottom: 10px;  transition: all 0.5s;  font-size: clamp(1.6rem, 4vw, 2.0rem);}.tab_content {  flex: 100%;  display: none;  overflow: hidden;}input[name="tab_switch"] {  display: none;}.tabs input:checked+.tab_label {  color: #fff;  background-color: var(--blue);}#tab01:checked~#tab01_content,#tab02:checked~#tab02_content,#tab03:checked~#tab03_content,#tab04:checked~#tab04_content {  display: block;}#form form {  font-size: 1.8rem;}#form .must {  color: #ff0000;  margin-left: 20px;}.form_item--input.radio {  display: flex;  flex-direction: column;  line-height: 2;  padding-left: 12px;  margin: 0 0 20px 0;}form {  margin: 40px 0;  text-align: left;  font-weight: 600;  line-height: 3;}.form_item--ttl {  padding: 0 0 20px;  margin: 0 0 20px 0;  line-height: 1;  border-bottom: 1px solid #757575;}.form_item--input {  border-bottom: 1px solid #757575;  padding: 0 4px 20px;  margin: 0 0 20px;}#tab01_content .form_item:nth-of-type(6) .form_item--input {  border-bottom: none;  margin: 0 0 40px 0;}input[type="text"],input[type="tel"],input[type="email"],input[type="number"],textarea {  display: block;  height: 48px;  width: 100%;  font-size: 2.0rem;  padding: 6px;  background-color: #f4f3f3;  border-radius: 3px;  border: 1px solid #757575;}input[type="radio"] {  margin: 0 3px 2px 5px;}input[type="number"] {  max-width: 120px;}textarea {  height: 252px;  resize: vertical;  background-color: #f4f3f3;  border-radius: 9px;}.form_submit button {  width: 100%;  max-width: 294px;  background-color: #76b322;  padding: 14px;  margin: 40px auto;  position: relative;  display: flex;  justify-content: center;  align-items: center;  border: none;  transition: 0.3s;}.form_submit button:hover {  opacity: 0.7;}.form_submit button p {  font-size: 2.2rem;  color: #ffffff;  text-align: left;  font-weight: 400;  letter-spacing: 0.1rem;}#contact_01 .must {  color: red;  padding-left: 10px;}.sec{    padding: 3% 0;}.h3_ttl{    font-size: max(2vw , 26px);    font-weight: 600;    margin-bottom: 50px;}.news_inner{    max-width: 1280px;    width: 100%;    margin: 0 auto;    background: #ebefee;    padding: 3vw;}.news_box{    padding: 3vw!important;}.news_box p{    font-size: 1.6rem;    line-height: 1.8;}.news_box .h3_ttl_line{    font-size: max(2vw , 2rem);    margin-bottom: 5%;}.ttl{    font-size: max(1.4vw , 1.8rem);    margin-bottom: 2rem;}.news_wrap{    padding: 0 3vw;}.news_list{    display: flex;    flex-wrap: wrap;    font-size: max(1vw , 16px);}.news_list dt{    width: 20%;    padding: 1rem;}.news_list dd{    width: 80%;    padding: 1rem;    text-align: left;}/* 前後記事ボタン */.news-pagination {  display: flex;  justify-content: space-between;  align-items: center;  margin: 40px 0 20px;  gap: 20px;}.news-pagination__btn {  display: inline-block;  padding: 12px 24px;  background-color: #007acc;  color: #fff;  text-decoration: none;  font-size: 15px;  font-weight: 600;  border-radius: 6px;  transition: background-color 0.2s ease, transform 0.15s ease;}.news-pagination__btn:hover {  background-color: #005fa3;  transform: translateY(-2px);}.news-pagination__prev {  margin-right: auto;}.news-pagination__next {  margin-left: auto;}/*---news---*/.column{    display: flex;    width: 80%;    margin: 5vw auto;    gap: 5vw;}.main-column{    width: 70%;}.side-column{    width: 30%;}.side-column h3{    background-color: #263e80;    color: #fff;    padding: 15px;    margin: 0 0 15px;    font-size: 1vw;    text-align: center;}.side-column ul{    margin: 0 0 3vw;}.side-column ul li{    margin: 0 0 15px;    padding: 0 0 15px;    border-bottom: 1px #6d542e dotted;}.side-column ul li a{    font-size: 1vw;    padding: 0 0 0 20px;}.main-column > p{    font-size: 1.2vw;    margin: 0 0 2vw;    color: #000;    padding: 15px;}.post{    width: 100%;    border-radius: 15px;    margin: 0 0 40px;}.post h2{    font-size: max(1.8vw , 2rem);    margin: 0 0 1vw;    background-color: #263e80;    padding: 15px;    color: #fff;    font-weight: 600;    letter-spacing: 0.06em;}.post h2 span{    margin: 0 2vw 0 0;}.post p{    font-size: 1vw;    line-height: 1.5;}.archive-content{    display: flex;    gap: 30px;}.archive-content li{    font: 1em sans-serif;}.archive-content li:nth-of-type(1){    width: 250px;}.archive-content li:nth-of-type(1) img{    width: 100%;    height: 200px;    object-fit: cover;}.archive-content li:nth-of-type(2){    width: calc(100% - 200px);}.archive-content li:nth-of-type(2) p:nth-of-type(1){    font-size: 18px;    display: flex;    justify-content: right;    align-items: center;    margin: 0 0 15px;}.archive-content li:nth-of-type(2) p:nth-of-type(1) span{    background-color: #595757;    color: #fff;    padding: 8px;    font-size: 12px;    margin: 0 15px 0 0;}.archive-content li:nth-of-type(2) p:nth-of-type(2){    margin: 0 0 15px;    font-size: 16px;}.archive-content li:nth-of-type(2) p:nth-of-type(3){    font-size: 14px;    display: flex;    justify-content: right;    align-items: center;}.archive-content li:nth-of-type(2) p:nth-of-type(3) a{    background-color: #595757;    color: #fff;    padding: 8px 8px 8px 20px;    position:relative;}.archive-content li:nth-of-type(2) p:nth-of-type(3) a:after{    content: '';    width: 8px;    height: 8px;    border: 0;    border-top: solid 2px #fff;    border-right: solid 2px #fff;    position: absolute;    top: 50%;    left: 5px;    margin-top: -5px;    transform: rotate(45deg);}h3.h3_ttl_line {    font-size: max(2vw, 20px);    font-weight: 600;    margin-bottom: 50px;}.post-navigation {  display: flex;  justify-content: space-between;  margin-top: 40px;  gap: 20px;}.post-navigation a {  display: inline-block;  padding: 10px 20px;  background-color: #333;  color: #fff;  text-decoration: none;  border-radius: 4px;  transition: background-color 0.3s ease;  font-size: 14px;}.post-navigation a:hover {  background-color: #555;}.post-navigation .prev-btn {  margin-right: auto;}.post-navigation .next-btn {  margin-left: auto;}@media screen and (max-width:968px) {  .column{    display: flex;    width: 90%;    margin: 5vw auto;    gap: 5vw;    flex-direction: column;  }  .main-column{      width: 100%;  }    .main-column .h3_ttl_line    {        font-size: max(2vw , 2rem);    }  .side-column{      width: 100%;  }  .side-column h3{      background-color: #263e80;      color: #fff;      padding: 15px;      margin: 0 0 15px;      font-size: 1.8rem;      text-align: center;  }  .side-column ul{      margin: 0 0 3vw;  }  .side-column ul li{      margin: 0 0 15px;      padding: 0 0 15px;      border-bottom: 1px #263e80 dotted;  }  .side-column ul li a{      font-size: 1.8rem;      padding: 0 0 0 20px;  }  .main-column > p{      font-size: 1.2vw;      margin: 0 0 2vw;      background-color: #dcdddd;      color: #000;      padding: 15px;  }  .post{      width: 100%;      border-radius: 15px;      margin: 0 0 40px;  }  .post h2{      font-size: 2rem;        margin: 0 0 2rem;        background-color: #263e80;        padding: 10px;        line-height: 1.5;        font-weight: 600;        letter-spacing: 0.06em;  }  .post h2 span{      margin: 0 2vw 0 0;  }  .post p{      font-size: 1.6rem;      line-height: 1.5;  }  .archive-content{      display: flex;      gap: 3rem;      flex-direction: column-reverse;  }  .archive-content li{      font: 1em sans-serif;  }  .archive-content li:nth-of-type(1){      width: 100%;  }  .archive-content li:nth-of-type(1) img{      width: 100%;  }  .archive-content li:nth-of-type(2){      width: 100%;  }  .archive-content li:nth-of-type(2) p:nth-of-type(1){      font-size: 18px;      display: flex;      justify-content: right;      align-items: center;      margin: 0 0 15px;  }  .archive-content li:nth-of-type(2) p:nth-of-type(1) span{      background-color: #595757;      color: #fff;      padding: 8px;      font-size: 12px;      margin: 0 15px 0 0;  }  .archive-content li:nth-of-type(2) p:nth-of-type(2){      margin: 0 0 15px;      font-size: 16px;  }  .archive-content li:nth-of-type(2) p:nth-of-type(3){      font-size: 14px;      display: flex;      justify-content: right;      align-items: center;  }  .archive-content li:nth-of-type(2) p:nth-of-type(3) a{      background-color: #595757;      color: #fff;      padding: 8px 8px 8px 20px;      position:relative;  }  .archive-content li:nth-of-type(2) p:nth-of-type(3) a:after{      content: '';      width: 8px;      height: 8px;      border: 0;      border-top: solid 2px #fff;      border-right: solid 2px #fff;      position: absolute;      top: 50%;      left: 5px;      margin-top: -5px;      transform: rotate(45deg);  }  .pagenation{      text-align: center;  }    .merit_box02    {        display: none;    }}/* スマホ対応 */@media screen and (max-width: 700px) {  .news-pagination {    flex-direction: column;    gap: 12px;  }  .news-pagination__btn {    width: 100%;    text-align: center;  }}.inner1280{    max-width: 1280px;    width: 100%;    margin: 0 auto;}@media screen and (min-width: 960px) {  .privacypolicy {    margin-bottom: 80px;  }  .form_item {    display: flex;    justify-content: center;    align-items: center;    max-width: 1000px;    margin: 0 auto;  }  .form_item--input.radio {    display: flex;    flex-direction: row;    justify-content: flex-start;    align-items: center;    line-height: 2;    padding-left: 24px;    height: 80px;    margin-bottom: 0;  }  .form_item--ttl {    padding: 30px 10px;    width: 40%;    margin: 0;    height: 80px;  }  .form_item--input {    width: 60%;    margin: 0;    padding: 20px 60px 20px 30px;    line-height: 1;    border-left: 1px solid #757575;    border-bottom: 1px solid #757575;    height: 80px;  }  .form_item--ttl {    line-height: 1;    border-bottom: 1px solid #757575;  }  .form_item--input label {    line-height: 1;  }  #tab01_content .form_item:nth-of-type(5) .form_item--ttl {    border-bottom: none;    margin: 0 0 auto;  }  #tab01_content .form_item:nth-of-type(5) .form_item--input {    height: 300px;    border-bottom: none;  }  #tab02_content .form_item:nth-of-type(8) .form_item--ttl {    border-bottom: none;  }  #tab02_content .form_item:nth-of-type(8) .form_item--input {    border-bottom: none;  }  .form_item--input.big {    padding: 16px 60px 15px 30px;  }}