@charset "utf-8";
/*
Theme Name:arashida-taxsr
Author:y.arashida
Description:嵐田税理士社労士事務所のホームページです
Version:1.0
*/
/* ヘッダーの高さを少し大きく */
header {
  height: 80px;
}
/*ナビ*/
#headerInner {
  display: flex;
  justify-content: space-between; /* 左にロゴ、右にハンバーガー */
  align-items: center;
  padding: 0 1rem;
}
.logo {
  width: 300px;
  height: auto;
  padding-left: 10px;
  padding-top: 5px;
}
/* ============================= */
/* ハンバーガー（タブレット用） */
/* ============================= */
.hamburger {
  position: absolute; /* relative 親要素に対して絶対位置 */
  top: 26px;
  right: 32px; /* 右端からの余白 */
  width: 38px;
  height: 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 2001;
  margin-right: 15px;
}
.hamburger span {
  display: block;
  height: 4px;
  width: 100%;
  background: #333;
  border-radius: 2px;
  transition: all 0.3s ease;
}
/* active時の× */
.hamburger.active span:nth-child(1) {
  transform: rotate(45deg) translate(7px, 12px);
}
.hamburger.active span:nth-child(2) {
  opacity: 0;
}
.hamburger.active span:nth-child(3) {
  transform: rotate(-45deg) translate(2px, -6px);
}
/* モーダルメニュー */
.modal-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: translateY(-100%);
  transition: transform 0.3s ease;
  background: rgba(255, 255, 255, 0.98);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  z-index: 1000;
}
.modal-menu.open {
  transform: translateY(0);
}
/* メニューリンク */
#menu nav.modal-menu .menu {
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  margin-top: 0 !important;
  margin-left: 0;
}
#menu nav.modal-menu .menu li {
  margin: 20px 0; /* 項目の間隔 */
}
#menu nav.modal-menu .menu li a {
  text-decoration: none;
  font-size: 24px;
  margin-left: 0;
}
#menu nav.modal-menu .menu li:last-child a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 162px;
  height: 24px;
  font-weight: bold;
  font-size: 1.5rem;
  color: #fff;
  text-align: center;
  position: relative;
  overflow: hidden;
  background: linear-gradient(to right, #556DAD, #AD9F55);
  transition: all 0.5s ease;
}
/* PCでは非表示 */
@media screen and (min-width: 1025px) {
  .hamburger, .modal-menu {
    display: none !important;
  }
}
#mainCopy {
  width: 56vw;
}
/* コンテンツの余白 */
.content {
  max-width: 750px; /* 画面幅に応じて調整 */
  margin: 0 auto; /* 中央揃え */
  padding: 0 20px; /* 画面端に少し余白 */
}
#aboutUsContents, #profileContents, #service, #informationContents, #contact-area, #footer {
  width: 750px;
}
/* 画像サイズ調整 */
img {
  width: 100%; /* コンテンツ幅に合わせる */
  height: auto; /* 縦横比を維持 */
  display: block; /* ブラウザの余白を消す */
}
/*ここから「私たちについて」*/
#aboutUs {
  width: 100%;
  height: 545px;
  color: #333;
}
#aboutUs .body_background {
  background: #fff;
}
#aboutUsContents {
  width: 90%;
  height: auto;
  display: block;
  margin: 55px auto;
  padding-top: 0; /*pc版の調整*/
  padding-bottom: 0; /*pc版の調整*/
}
#aboutUs h2 {
  margin-bottom: 10px;
}
#description {
  display: flex;
  flex-direction: column;
}
#aboutUs h3 {
  margin: 0 auto;
}
#h3_image {
  float: none;
  max-width: 100vw;
  max-height: 135px;
  margin: 0 auto;
  overflow: hidden;
}
#aboutUsTextbox p {
  margin-top: 0;
  line-height: 1.7;
  width: 90%;
  margin: 0 auto;
}
/*ここまで「私たちについて」*/
/*ここから「プロフィール」*/
#profile {
  clear: both;
  width: 100%;
  height: 952px;
}
#profile .body_background {
  background: #fff;
}
#profileContents {
  width: 90%;
  height: 845px;
  margin: 55px auto 110px;
  display: flex;
  flex-direction: column;
  position: static;
}
.br_pc {
  display: block;
}
#profile .link_area {
  width: 64%;
  margin: 10px auto;
  position: static;
}
#profile .link {
  order: 3;
}
#profimg {
  float: none;
  max-width: 90vw;
  max-height: 523px;
  overflow: hidden;
  margin: 0 auto;
  display: block;
}
#profile a {
  order: -1;
}
#profileTextbox {
  float: none;
  width: 100%;
  height: 240px;
  order: 0;
}
#profileText {
  width: 100%;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 16px;
  line-height: 2;
}
#profile h2 {
  height: 29px;
  padding-bottom: 10px; /*pcの余白削除*/
  margin-bottom: 20px;
  order: -2;
}
#profile h3 {
  width: 90%;
  margin: 20px auto;
  line-height: 1.3;
  font-size: 25px;
}
#profile p {
  width: 90%;
  margin: 0 auto 15px;
  line-height: 1.4;
}
/*ここから「サービス内容」*/
#Byservice {
  width: 100%;
  height: 2175px;
}
#service {
  width: 90%;
  height: auto;
  margin: 55px auto;
}
#service h2 {
  width: 100%;
  margin-bottom: 20px;
}
/*税務顧問*/
#taxadvisor {
  width: 100%;
  height: 700px;
}
#taxadvisorContents {
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: flex;
  flex-direction: column-reverse;
  position: static;
}
#taxadvisorImage {
  width: 90vw;
  height: 390px;
  margin: 0 auto;
  background-image: url(images/zeimu_t.jpg);
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  overflow: hidden;
}
#taxadvisorTextbox {
  float: none;
  width: 100%;
  height: auto;
  position: static;
}
#taxadvisorText {
  width: 90%;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 16px;
  line-height: 2;
  color: #333;
  margin: 15px 23px 0 23px;
}
#taxadvisorText h3 {
  font-size: 1.5rem;
  line-height: 1.2;
  margin: 15px auto 10px;
}
#taxadvisor .link_area {
  margin: 10px auto;
  width: 70%;
}
/*相続・事業承継コンサルティング*/
#inheritance {
  clear: both;
  width: 100%;
  height: 700px;
}
#inheritanceContents {
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: flex;
  flex-direction: column-reverse;
  position: static;
}
#inheritanceTextbox {
  float: none;
  width: 100%;
  height: auto;
  margin-top: 0;
  position: static;
}
#inheritanceText {
  width: 90%;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 16px;
  line-height: 2;
  margin: 15px 23px 0 23px;
}
#inheritanceText h3 {
  font-size: 1.2rem;
  line-height: 1.2;
  margin: 15px auto 10px;
}
#inheritanceImage {
  width: 90vw;
  height: 390px;
  margin: 0 auto;
  background-image: url("images/sozoku_t.jpg");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  overflow: hidden;
}
#inheritance .link_area {
  margin: 10px auto;
  width: 70%;
}
/*社会保険労務士業務*/
#labor {
  clear: both;
  width: 100%;
  height: 700px;
}
#laborContents {
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: flex;
  flex-direction: column-reverse;
  position: static;
}
#laborTextbox {
  float: none;
  width: 100%;
  height: auto;
  margin-top: 0;
  position: static;
}
#laborText {
  color: #333;
  width: 90%;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 16px;
  line-height: 2;
  margin: 15px 23px 0 23px;
}
#laborText h3 {
  font-size: 1.5rem;
  line-height: 1.2;
  margin: 15px auto 10px;
}
#laborimg {
  width: 90vw;
  height: 273px;
  margin: 0 auto;
  overflow: hidden;
}
#labor .link_area {
  margin: 10px auto;
  width: 70%;
}
/*ここまで「サービス内容」*/
#information {
  height: 430px;
}
#informationContents {
  margin: 55px auto;
}
#contact {
  height: 290px;
}
#contact-area, #footer {
  margin: 55px auto;
}
/*ここから「お知らせ」*/
#information .body_background {
  background: #fff;
}
/*フッター*/
#facebookIcon {
  display: inline-block;
  margin-top: 5px; /* アイコンの上下余白 */
}
#facebookIcon img {
  width: 32px;
  height: 32px;
}
/*次ページ共通*/
#frame {
  width: 90%;
  margin: none;
  overflow: hidden;
}
/*ここからプロフィールページ*/
.pageTitle {
  font-size: 1.3rem;
  color: #fff;
  background-image: url("../images/obi.jpg");
  width: 100%;
  background-size: cover;
  background-position: center;
  text-align: center;
  padding-top: 70px;
  height: 24px;
  padding-bottom: 70px;
  margin-top: 60px;
}
.profileContain {
  max-width: 100%;
  height: auto;
}
.container {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
.profileTextbox {
  display: flex;
  flex-direction: column-reverse;
  justify-content: center;
  width: 100%;
  height: 1018px;
  margin-bottom: 30px;
  margin: 0 auto 5px;
}
.picArea {
  width: 90%;
}
.name_area {
  margin-left: 0;
}
.name {
  margin: 0;
}
.greeting, .career, .certified {
  width: 100%;
}
.greeting {
  margin-bottom: 10px;
  height: auto;
}
.greeting h2 {
  margin-bottom: 20px;
}
.profile-table {
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
}
.career {
  margin-bottom: 35px;
}
/*ここまでプロフィーページ*/
/*サービスページ*/
#page-service {
  width: 100%;
  height: 1518px;
  font-size: 16px;
}
#service-contain {
  width: 100%;
  height: 2000px;
}
ol {
  margin-bottom: 20px;
}
#service-contents h2 {
  margin-bottom: 20px;
  width: 100%;
  line-height: 1.5;
}
/*税務顧問*/
#taxad {
  width: 100%;
  height: auto;
}
#taxad-contents {
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
}
#taxad-image {
  display: none;
}
#taxad-textbox {
  float: none;
  width: 100%;
  height: auto;
  margin: 37px 0 20px;
}
#taxad-text {
  padding-top: 0;
  padding-bottom: 0;
  line-height: 2;
  color: #333;
  margin: 15px 23px 0 23px;
  order: 3;
}
.example {
  list-style-type: disc;
}
/*相続・事業承継コンサルティング*/
#inherit {
  clear: both;
  width: 100%;
  height: auto;
  margin-top: 0px;
}
#inherit-contents {
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
}
#inherit-textbox {
  float: none;
  width: 100%;
  height: auto;
  margin-top: 0;
}
#inherit-text {
  padding-top: 0;
  padding-bottom: 0;
  line-height: 2;
  margin: 15px 23px 0 23px;
}
#inherit-image {
  display: none;
}
/*社会保険労務士業務*/
#labor-m {
  clear: both;
  width: 100%;
  height: auto;
  margin-top: 35px;
}
#labor-m-contents {
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: flex;
  flex-direction: column-reverse;
}
#labor-m-image {
  display: none;
}
#labor-m-textbox {
  float: none;
  width: 100%;
  height: auto;
  margin-bottom: 55px;
}
#labor-m-text {
  color: #333;
  padding-top: 0;
  padding-bottom: 0;
  line-height: 2;
  margin: 15px 23px 0 23px;
}
#contact .br_sp {
  display: block;
}