@charset "UTF-8";
/* ---------------------------------------------
browser initialization
--------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  font-size: 100%;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block;
}

blockquote, q {
  quotes: none;
}

blockquote::before, blockquote::after, q::before, q::after {
  content: '';
  content: none;
}

input, textarea {
  margin: 0;
  padding: 0;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th {
  text-align: left;
}

a:focus {
  outline: none;
}

/* ---------------------------------------------
common format
--------------------------------------------- */
html {
  font-size: 10px;
}

body {
  background-color: #f3f3f3;
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, sans-serif;
  font-size: 1.6rem;
  line-height: 1.6;
  color: #000;
  font-feature-settings: "palt";
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

a {
  color: #413c89;
}

a:hover {
  text-decoration: none;
}

a:hover img {
  opacity: 0.75;
}

img {
  margin: 0 auto;
  max-width: 100%;
  height: auto;
  display: block;
}

p {
  margin-top: 1.6em;
}

input, textarea, select, button {
  border-radius: 0;
  font-family: inherit;
  font-size: inherit;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
}

input[type="text"], input[type="email"], input[type="tel"], textarea {
  border: #999 solid 1px;
  padding: 10px;
  width: 100%;
  display: block;
  box-sizing: border-box;
}

textarea {
  height: 10em;
}

button {
  cursor: pointer;
}

label {
  padding-left: 30px;
  cursor: pointer;
  position: relative;
  display: block;
}

label input {
  background-color: #fff;
  border: #999 solid 1px;
  width: 17px;
  height: 17px;
  position: absolute;
  top: 3px;
  left: 0;
  display: block;
}

label input[type="radio"] {
  border-radius: 50%;
}

label input:checked {
  background-color: #413c89;
}

label.select_box {
  padding-left: 0;
  position: relative;
  display: inline-block;
}

label.select_box::after {
  content: '';
  border-color: #000 transparent transparent transparent;
  border-style: solid;
  border-width: 8px 4.5px 0 4.5px;
  margin: auto 0;
  width: 0;
  height: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  display: block;
}

label.select_box select {
  background-color: #fff;
  border: #999 solid 1px;
  border-radius: 0;
  padding: 10px 30px 10px 10px;
  font-family: inherit;
  font-size: inherit;
  cursor: pointer;
  display: block;
}

@media (min-width: 640px) {
  a[href^="tel:"] {
    text-decoration: none;
    color: #000;
    pointer-events: none;
  }
}

/* ---------------------------------------------
site common class
--------------------------------------------- */
.mini_10 {
  font-size: 1rem;
}

.mini_12 {
  font-size: 1.2rem;
}

.mini_14 {
  font-size: 1.4rem;
}

.normal {
  font-size: 1.6rem;
}

.large_18 {
  font-size: 1.8rem;
}

.large_20 {
  font-size: 2rem;
}

.large_22 {
  font-size: 2.2rem;
}

.large_24 {
  font-size: 2.4rem;
}

.align_left {
  text-align: left;
}

.align_center {
  text-align: center;
}

.align_right {
  text-align: right;
}

.valign_top {
  vertical-align: top;
}

.valign_middle {
  vertical-align: middle;
}

.valign_baseline {
  vertical-align: baseline;
}

.float_left {
  float: left;
}

.float_right {
  float: right;
}

.clear {
  clear: both;
}

.clearfix::after {
  content: '';
  display: table;
  clear: both;
}

.notes {
  margin-top: 1em;
  padding-left: 1.25em;
  font-size: 75%;
  line-height: 1.2;
  position: relative;
}

.notes::before {
  content: '※';
  position: absolute;
  top: 0;
  left: 0;
}

.notes_list {
  margin-top: 1em;
  font-size: 75%;
  line-height: 1.2;
}

.notes_list li {
  margin-top: 0.5em;
  padding-left: 1.25em;
  position: relative;
}

.notes_list li::before {
  content: '※';
  position: absolute;
  top: 0;
  left: 0;
}

.inner {
  padding: 0 10px;
  box-sizing: border-box;
}

.sp_hide {
  display: none;
}

@media (min-width: 640px) {
  .inner {
    margin: 0 auto;
    max-width: 1200px;
    min-width: 980px;
  }
  .sp_hide {
    display: block;
  }
  .pc_hide {
    display: none;
  }
}

/* ---------------------------------------------
keyframes
--------------------------------------------- */
@keyframes Flash {
  25% {
    opacity: 0;
  }
}

/* ---------------------------------------------
header format
--------------------------------------------- */
#site_header {
  background-color: #fff;
  border-top: #912600 solid 5px;
  padding: 10px 0;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.5);
}

#site_header .inner #header_contents h1 {
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 1.4;
}

#site_header .inner #header_contents #header_logo {
  margin-top: 5px;
}

#site_header .inner #header_contents #header_logo a {
  margin: 0 auto;
  width: 240px;
  display: block;
}

#site_header .inner #header_contents #header_logo a img {
  width: 100%;
}

@media (min-width: 640px) {
  #site_header {
    padding: 20px 0;
    min-width: 980px;
  }
  #site_header .inner #header_contents {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
  }
  #site_header .inner #header_contents h1 {
    font-size: 1.4rem;
    flex: 1;
  }
  #site_header .inner #header_contents #header_logo {
    margin-top: 0;
    margin-right: 20px;
  }
  #site_header .inner #header_contents #header_logo a {
    width: 280px;
  }
}

/* ---------------------------------------------
site main frame
--------------------------------------------- */
#main_frame {
  margin-top: 20px;
}

#main_frame #main_contents {
  margin-top: 20px;
}

#main_frame #main_contents #side_column {
  margin-top: 40px;
}

@media (min-width: 640px) {
  #main_frame {
    margin-top: 40px;
    min-width: 980px;
  }
  #main_frame #main_contents {
    margin-top: 40px;
    display: flex;
  }
  #main_frame #main_contents main {
    flex: 1;
  }
  #main_frame #main_contents #side_column {
    margin-top: 0;
    margin-left: 40px;
    width: 260px;
  }
}

/* ---------------------------------------------
side column
--------------------------------------------- */
#side_column #side_banners {
  margin: 0 -5px;
  display: flex;
  flex-wrap: wrap;
}

#side_column #side_banners li {
  margin-top: 10px;
  padding: 0 5px;
  width: 50%;
  box-sizing: border-box;
}

#side_column #side_banners li a {
  display: block;
}

#side_column nav {
  margin-top: 20px;
}

#side_column nav a {
  background-color: #413c89;
  padding: 10px 30px 10px 10px;
  font-weight: bold;
  text-decoration: none;
  color: #fff;
  position: relative;
  display: block;
}

#side_column nav a::before, #side_column nav a::after {
  content: '';
  margin: auto 0;
  position: absolute;
  top: 0;
  bottom: 0;
  display: block;
}

#side_column nav a::before {
  background-color: #fff;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  right: 10px;
}

#side_column nav a::after {
  border-color: transparent transparent transparent #413c89;
  border-style: solid;
  border-width: 5px 0 5px 8px;
  width: 0;
  height: 0;
  right: 13px;
}

#side_column nav a:hover {
  background-color: #635eab;
}

#side_column #side_column_list {
  background-color: #fff;
  margin-top: 20px;
  padding: 10px;
}

#side_column #side_column_list h2 {
  background-image: repeating-linear-gradient(-45deg, #912600 0 2px, #9c3c1a 2px 4px);
  margin: -10px -10px 0;
  padding: 10px;
  font-size: 2rem;
  line-height: 1.4;
  color: #fff;
}

#side_column #side_column_list h2 span {
  border-left: #fff solid 5px;
  padding-left: 10px;
  display: block;
}

#side_column #side_column_list h2 + .column_list {
  margin-top: 10px;
}

#side_column #side_column_list .column_list {
  margin-top: 20px;
}

#side_column #side_column_list .column_list h3 {
  border-left: #912600 solid 5px;
  padding-left: 10px;
  color: #912600;
  font-size: 1.8rem;
}

#side_column #side_column_list .column_list ol li {
  border-bottom: #999 dashed 1px;
  line-height: 1.4;
}

#side_column #side_column_list .column_list ol li a {
  padding: 10px 20px 10px 10px;
  display: block;
  position: relative;
}

#side_column #side_column_list .column_list ol li a::after {
  content: '';
  border-top: #413c89 solid 2px;
  border-right: #413c89 solid 2px;
  margin: auto 0;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  display: block;
  transform: rotate(45deg);
}

#side_column #side_column_list .column_list ol li a time {
  margin-bottom: 5px;
  font-size: 1.2rem;
  display: block;
}

#side_column #side_column_list .column_list ol li a:hover {
  background-color: #413c89;
  color: #fff;
}

#side_column #side_column_list .column_list ol li a:hover::after {
  border-top-color: #fff;
  border-right-color: #fff;
}

#side_column #side_column_list .column_list nav {
  margin-top: 20px;
}

#side_column #side_column_list > nav {
  margin-top: 30px;
}

@media (min-width: 640px) {
  #side_column #side_banners {
    margin: 0;
    display: block;
  }
  #side_column #side_banners li {
    padding: 0;
    width: auto;
  }
  #side_column #side_banners li:first-child {
    margin-top: 0;
  }
  #side_column #side_column_list {
    margin-top: 40px;
  }
  #side_column #side_column_list .column_list {
    margin-top: 30px;
  }
  #side_column #side_column_list .column_list ol li a time {
    font-size: 1.4rem;
  }
  #side_column #side_column_list > nav {
    margin-top: 40px;
  }
}

/* ---------------------------------------------
layouts
--------------------------------------------- */
#bread_navi {
  margin-top: 40px;
  font-size: 1.2rem;
  line-height: 1.4;
}

#bread_navi li {
  display: inline-block;
}

#bread_navi li::before {
  content: '>';
  margin: 0 1em;
}

#bread_navi li:first-child::before {
  display: none;
}

.default_block {
  background-color: #fff;
  margin-top: 30px;
  padding: 10px;
}

.default_block:first-child {
  margin-top: 0;
}

.default_block h2 {
  background: linear-gradient(to bottom, white 0%, #eeeeee 100%);
  border: #999 solid 1px;
  border-radius: 4px;
  padding: 5px 5px 5px 30px;
  font-size: 2.4rem;
  line-height: 1.4;
  color: #912600;
  position: relative;
}

.default_block h2::before, .default_block h2::after {
  content: '';
  position: absolute;
  display: block;
}

.default_block h2::before {
  background-color: #912600;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  top: 10px;
  left: 5px;
}

.default_block h2::after {
  border-color: transparent transparent transparent #fff;
  border-style: solid;
  border-width: 5px 0 5px 8px;
  width: 0;
  height: 0;
  top: 15px;
  left: 12px;
}

.editor_block h3 {
  border-left: #912600 solid 10px;
  margin-top: 60px;
  padding-left: 10px;
  font-size: 2.2rem;
  line-height: 1.4;
}

.editor_block h4 {
  margin-top: 40px;
  font-size: 2rem;
  line-height: 1.4;
}

.editor_block h5 {
  margin-top: 40px;
  font-size: 1.8rem;
  line-height: 1.4;
}

.editor_block h6 {
  margin-top: 40px;
}

.editor_block ol {
  list-style-type: decimal;
  margin: 1.6em 0 0 2em;
  line-height: 1.4;
}

.editor_block ol li {
  margin-top: 0.5em;
}

.editor_block ol li:first-child {
  margin-top: 0;
}

.editor_block ul {
  list-style-type: square;
  margin: 1.6em 0 0 1.25em;
  line-height: 1.4;
}

.editor_block ul li {
  margin-top: 0.5em;
}

.editor_block ul li:first-child {
  margin-top: 0;
}

.editor_block table {
  border: #999 solid 1px;
  margin-top: 1.6em;
  line-height: 1.4;
  box-sizing: border-box;
}

.editor_block table th, .editor_block table td {
  border: #999 solid 1px;
  font-size: 1.4rem;
  padding: 10px;
  vertical-align: middle;
}

.editor_block table thead th {
  background-color: #efefef;
  text-align: center;
}

.editor_block table tbody th {
  background-color: #efefef;
}

.editor_block hr {
  margin: 1.6em 0;
  border-top: #999 solid 1px;
}

.editor_block blockquote {
  background-color: #efefef;
  margin-top: 1.6em;
  padding: 20px;
}

.editor_block .default_link {
  margin-top: 20px;
  font-weight: bold;
  line-height: 1.2;
}

.editor_block .default_link a {
  background-color: #413c89;
  margin: 0 auto;
  padding: 10px 30px 10px 10px;
  text-decoration: none;
  color: #fff;
  position: relative;
  display: block;
}

.editor_block .default_link a::before, .editor_block .default_link a::after {
  content: '';
  margin: auto 0;
  position: absolute;
  top: 0;
  bottom: 0;
  display: block;
}

.editor_block .default_link a::before {
  background-color: #fff;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  right: 10px;
}

.editor_block .default_link a::after {
  border-color: transparent transparent transparent #413c89;
  border-style: solid;
  border-width: 5px 0 5px 8px;
  width: 0;
  height: 0;
  right: 13px;
}

.editor_block .default_link a:hover {
  background-color: #635eab;
}

.sales_point_list {
  margin-top: 1em;
  font-size: 1.2rem;
  line-height: 1.2;
  color: #fff;
}

.sales_point_list li {
  background-color: #666;
  margin-right: 5px;
  padding: 5px 10px;
  display: inline-block;
}

.sales_point_list li.free {
  background-color: red;
}

.sales_point_list li.nationwide {
  background-color: blue;
}

.sales_point_list li.payments {
  background-color: green;
}

.client_category_list li {
  margin-right: 1em;
  padding-left: 15px;
  display: inline-block;
  position: relative;
}

.client_category_list li::before {
  content: '';
  background-color: #912600;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 5px;
  left: 0;
  display: block;
}

#pickup_list ul {
  margin: 20px -5px 0;
  display: flex;
}

#pickup_list ul li {
  padding: 0 5px;
  width: 33.33%;
  box-sizing: border-box;
}

#pickup_list ul li a {
  display: block;
}

#pickup_list ul li a p {
  margin-top: 5px;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.2;
}

#search_contents form dl {
  margin-top: -10px;
  line-height: 1.4;
}

#search_contents form dl dt {
  background-color: #912600;
  margin-top: 30px;
  padding: 5px 5px 5px 50px;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  position: relative;
}

#search_contents form dl dt::before {
  content: '';
  background-image: url("https://1b7078.claudeassets.com/20241204220608im_/https://fudousantoushi-senmon.com/img/icon_search.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 25px auto;
  border-right: #fff solid 1px;
  width: 40px;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
}

#search_contents form dl dt:nth-last-of-type(1) {
  background-color: #b47832;
}

#search_contents form dl dt:nth-last-of-type(1)::before {
  background-image: url("https://867326.claudeassets.com/20241204220608im_/https://fudousantoushi-senmon.com/img/icon_pen.svg");
}

#search_contents form dl dt:nth-last-of-type(2) {
  background-color: #962da0;
}

#search_contents form dl dt:nth-last-of-type(2)::before {
  background-image: url("https://8af31c.claudeassets.com/20241204220608im_/https://fudousantoushi-senmon.com/img/icon_ok.svg");
}

#search_contents form dl dt:nth-last-of-type(3) {
  background-color: #418737;
}

#search_contents form dl dt:nth-last-of-type(3)::before {
  background-image: url("https://cef3f2.claudeassets.com/20241204220608im_/https://fudousantoushi-senmon.com/img/icon_map.svg");
}

#search_contents form dl dd {
  margin-top: 10px;
  font-size: 1.4rem;
}

#search_contents form dl dd .check_list {
  border-top: #912600 solid 1px;
  border-left: #912600 solid 1px;
  display: flex;
  flex-wrap: wrap;
}

#search_contents form dl dd .check_list li {
  border-right: #912600 solid 1px;
  border-bottom: #912600 solid 1px;
  width: 50%;
  box-sizing: border-box;
}

#search_contents form dl dd .check_list li label {
  padding: 10px 10px 10px 40px;
}

#search_contents form dl dd .check_list li label input {
  top: 12px;
  left: 10px;
}

#search_contents form dl dd .area_select .select_box {
  margin-right: 10px;
}

#search_contents form #btn_submit {
  margin-top: 30px;
}

#search_contents form #btn_submit button {
  background-color: #912600;
  border: none;
  margin: 0 auto;
  padding: 10px 0;
  width: 100%;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  display: block;
}

#search_contents form #btn_submit button:hover {
  background-color: #b34822;
}

.pagination {
  margin-top: 20px;
}

.pagination p {
  margin-top: 0;
  line-height: 1.2;
}

.pagination p b {
  font-size: 2rem;
}

.pagination ol {
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
}

.pagination ol li {
  margin: 10px 5px 0;
  display: inline-block;
}

.pagination ol li a {
  border: #413c89 solid 1px;
  width: 28px;
  height: 28px;
  text-decoration: none;
  line-height: 28px;
  display: block;
}

.pagination ol li a:hover {
  background-color: #413c89;
  color: #fff;
}

.pagination ol li span {
  line-height: 30px;
  display: block;
}

@media (min-width: 640px) {
  #bread_navi {
    font-size: 1.4rem;
  }
  .default_block {
    margin-top: 60px;
    padding: 20px;
  }
  .default_block h2 {
    padding-left: 35px;
    font-size: 2.8rem;
  }
  .default_block h2::before {
    width: 25px;
    height: 25px;
    top: 11px;
  }
  .default_block h2::after {
    border-width: 6px 0 6px 10px;
    top: 17px;
    left: 14px;
  }
  .editor_block h3 {
    font-size: 2.4rem;
  }
  .editor_block h4 {
    font-size: 2.2rem;
  }
  .editor_block h5 {
    font-size: 2rem;
  }
  .editor_block h6 {
    font-size: 1.8rem;
    line-height: 1.4;
  }
  .editor_block ol {
    list-style-type: decimal;
    margin: 1.6em 0 0 2em;
    line-height: 1.4;
  }
  .editor_block ol li {
    margin-top: 0.5em;
  }
  .editor_block ol li:first-child {
    margin-top: 0;
  }
  .editor_block table th, .editor_block table td {
    font-size: 1.2rem;
  }
  .editor_block .default_link {
    margin-top: 30px;
  }
  .editor_block .default_link a {
    padding: 15px 35px 15px 15px;
    width: 80%;
    box-sizing: border-box;
  }
  .editor_block .default_link a::before {
    right: 15px;
  }
  .editor_block .default_link a::after {
    right: 18px;
  }
  .sales_point_list {
    font-size: 1.4rem;
  }
  .sales_point_list li {
    margin-right: 10px;
  }
  #pickup_list ul {
    margin-right: -20px;
    margin-left: -20px;
  }
  #pickup_list ul li {
    padding: 0 20px;
  }
  #pickup_list ul li a {
    display: block;
  }
  #pickup_list ul li a p {
    font-size: 1.6rem;
  }
  #search_contents form dl dt {
    padding: 10px 10px 10px 60px;
  }
  #search_contents form dl dt::before {
    background-size: 35px auto;
    width: 50px;
  }
  #search_contents form dl dd {
    font-size: 1.6rem;
  }
  #search_contents form #btn_submit button {
    padding: 15px 0;
    width: 80%;
  }
  .pagination {
    margin-top: 40px;
  }
  .pagination ol {
    font-size: 1.6rem;
  }
  .pagination ol li a {
    width: 38px;
    height: 38px;
    line-height: 38px;
  }
  .pagination ol li span {
    line-height: 40px;
  }
}

/* ---------------------------------------------
top
--------------------------------------------- */
#category_group2 ul {
  margin-top: 10px;
}

#category_group2 ul li {
  margin-top: 5px;
}

#category_group2 ul li a {
  background-color: #f3f3f3;
  padding: 10px 30px 10px 10px;
  text-decoration: none;
  position: relative;
  display: block;
}

#category_group2 ul li a::after {
  content: '';
  border-color: transparent transparent transparent #413c89;
  border-style: solid;
  border-width: 7px 0 7px 10px;
  margin: auto 0;
  width: 0;
  height: 0;
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  display: block;
}

#category_group2 ul li a:hover {
  background-color: #413c89;
  color: #fff;
}

#category_group2 ul li a:hover::after {
  border-left-color: #fff;
}

#location_list > ol {
  margin-top: -10px;
}

#location_list > ol > li {
  margin-top: 20px;
}

#location_list > ol > li dl dt {
  border-bottom: #000 solid 1px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.4;
}

#location_list > ol > li dl dd ol li {
  margin-top: 10px;
  line-height: 1.2;
  display: inline-block;
}

#location_list > ol > li dl dd ol li a {
  background-color: #413c89;
  margin-right: 10px;
  padding: 5px 10px;
  color: #fff;
  display: inline-block;
}

#support_area_list > ol {
  margin-top: -10px;
}

#support_area_list > ol > li {
  margin-top: 20px;
}

#support_area_list > ol > li dl dt {
  border-bottom: #000 solid 1px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.4;
}

#support_area_list > ol > li dl dd ol li {
  margin-top: 10px;
  line-height: 1.2;
  display: inline-block;
}

#support_area_list > ol > li dl dd ol li a {
  background-color: #413c89;
  margin-right: 10px;
  padding: 5px 10px;
  color: #fff;
  display: inline-block;
}

@media (min-width: 640px) {
  #category_group2 ul {
    margin-right: -5px;
    margin-left: -5px;
    display: flex;
    flex-wrap: wrap;
  }
  #category_group2 ul li {
    margin-top: 10px;
    padding: 0 5px;
    width: 50%;
    box-sizing: border-box;
  }
  #location_list > ol {
    margin-right: -10px;
    margin-left: -10px;
    display: flex;
    flex-wrap: wrap;
  }
  #location_list > ol > li {
    margin-top: 30px;
    padding: 0 10px;
    width: 50%;
    box-sizing: border-box;
  }
  #location_list > ol > li dl dd ol li {
    margin-top: 15px;
  }
  #location_list > ol > li dl dd ol li a {
    margin-right: 1em;
  }
  #support_area_list > ol > li {
    margin-top: 30px;
  }
  #support_area_list > ol > li dl {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  #support_area_list > ol > li dl dt {
    border-bottom: none;
    width: 200px;
    position: relative;
  }
  #support_area_list > ol > li dl dt::before {
    content: '';
    background-color: #912600;
    margin: auto 0;
    width: 100%;
    height: 1px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
  }
  #support_area_list > ol > li dl dt span {
    background-color: #fff;
    padding-right: 20px;
    display: inline-block;
    position: relative;
    z-index: 1;
  }
  #support_area_list > ol > li dl dd {
    border: #912600 solid 1px;
    padding: 10px;
    flex: 1;
  }
  #support_area_list > ol > li dl dd ol {
    margin-top: -15px;
  }
  #support_area_list > ol > li dl dd ol li {
    margin-top: 15px;
  }
  #support_area_list > ol > li dl dd ol li a {
    margin-right: 1em;
  }
}

/* ---------------------------------------------
client list
--------------------------------------------- */
#list_header {
  font-size: 1.4rem;
}

#list_header *:first-child {
  margin-top: 0;
}

#client_list > ul > li {
  border-bottom: #912600 dashed 1px;
  line-height: 1.4;
}

#client_list > ul > li a {
  padding: 20px 0;
  text-decoration: none;
  color: #000;
  display: block;
}

#client_list > ul > li a .body {
  margin-top: 20px;
}

#client_list > ul > li a .body h3 {
  border-left: #000 solid 5px;
  padding-left: 10px;
  font-size: 2rem;
}

#client_list > ul > li a .body dl {
  margin-top: 15px;
}

#client_list > ul > li a .body dl dt {
  background-color: #e6dcc8;
  padding: 5px;
}

#client_list > ul > li a .body dl dd {
  border-bottom: #e6dcc8 solid 1px;
  padding: 10px 0;
}

#client_list > ul > li a .body nav {
  margin-top: 20px;
  text-align: right;
}

#client_list > ul > li a .body nav span {
  background-color: #413c89;
  padding: 10px 20px;
  font-weight: bold;
  display: inline-block;
  color: #fff;
}

#client_list > ul > li a:hover nav span {
  background-color: #635eab;
}

@media (min-width: 640px) {
  #client_list > ul > li a {
    display: flex;
  }
  #client_list > ul > li a .photo {
    margin-right: 20px;
    width: 200px;
  }
  #client_list > ul > li a .body {
    margin-top: 0;
    flex: 1;
  }
  #client_list > ul > li a .body dl {
    border-bottom: #ccc solid 1px;
    margin-top: 0;
    padding: 15px 0;
    display: flex;
    flex-wrap: wrap;
  }
  #client_list > ul > li a .body dl dt {
    background-color: transparent;
    padding: 0;
    width: 140px;
  }
  #client_list > ul > li a .body dl dd {
    border-bottom: none;
    padding: 0;
    flex: 1;
  }
  #client_list > ul > li a .body dl:first-of-type {
    margin-top: 5px;
  }
}

/* ---------------------------------------------
client detail
--------------------------------------------- */
#client_detail #client_photos {
  margin: 20px -5px 0;
  display: flex;
  justify-content: center;
}

#client_detail #client_photos li {
  padding: 0 5px;
  max-width: 50%;
  box-sizing: border-box;
}

#client_detail #client_data dl {
  margin-top: 30px;
  line-height: 1.4;
}

#client_detail #client_data dl dt {
  border-bottom: #999 solid 1px;
  padding-bottom: 5px;
  font-weight: bold;
}

#client_detail #client_data dl dd {
  margin-top: 10px;
}

#client_detail #client_data dl dd > *:first-child {
  margin-top: 0;
}

#client_detail #client_map {
  margin-top: 30px;
}

#client_detail #client_map iframe {
  width: 100%;
  height: 240px;
  display: block;
}

#client_detail nav {
  border-bottom: #413c89 solid 4px;
  margin-top: 30px;
  padding-bottom: 20px;
}

#client_detail nav h3 {
  padding-top: 70px;
  font-size: 2rem;
  line-height: 1.4;
  color: #413c89;
  text-align: center;
  position: relative;
}

#client_detail nav h3::after {
  content: '';
  background-image: url("https://100f7c.claudeassets.com/20241204220608im_/https://fudousantoushi-senmon.com/img/icon_document.svg");
  background-position: 15px center;
  background-repeat: no-repeat;
  background-color: #413c89;
  background-size: auto 34px;
  border-radius: 50%;
  margin: 0 auto;
  width: 60px;
  height: 60px;
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  display: block;
}

#client_detail nav h3::before {
  content: '';
  background-color: #413c89;
  width: 100%;
  height: 4px;
  position: absolute;
  top: 28px;
  left: 0;
  display: block;
}

#client_detail nav ul {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
}

#client_detail nav ul li {
  margin-top: 15px;
  box-sizing: border-box;
}

#client_detail nav ul li a {
  border-radius: 6px;
  padding: 5px;
  text-decoration: none;
  color: #fff;
  display: block;
}

#client_detail nav ul li a span {
  background-position: left center;
  background-repeat: no-repeat;
  display: inline-block;
  text-align: left;
}

#client_detail nav ul li:nth-child(1) a {
  background-color: #413c89;
  box-shadow: 0 4px 0 0 #1f1a67;
}

#client_detail nav ul li:nth-child(1) a span {
  background-image: url("https://3e0ec4.claudeassets.com/20241204220608im_/https://fudousantoushi-senmon.com/img/icon_mail.svg");
  background-size: 30px auto;
  padding-left: 40px;
}

#client_detail nav ul li:nth-child(1) a:hover {
  background-color: #635eab;
}

#client_detail nav ul li:nth-child(2) a {
  background-color: #dc143c;
  box-shadow: 0 4px 0 0 #ba001a;
}

#client_detail nav ul li:nth-child(2) a span {
  background-image: url("https://46dc21.claudeassets.com/20241204220608im_/https://fudousantoushi-senmon.com/img/icon_chat.svg");
  background-size: 40px auto;
  padding-left: 50px;
}

#client_detail nav ul li:nth-child(2) a:hover {
  background-color: #fe365e;
}

@media (min-width: 640px) {
  #client_detail #client_photos {
    margin-right: -10px;
    margin-left: -10px;
  }
  #client_detail #client_photos li {
    padding-right: 10px;
    padding-left: 10px;
  }
  #client_detail #client_data {
    margin-top: 40px;
  }
  #client_detail #client_data dl {
    border-bottom: #999 solid 1px;
    margin-top: 30px;
    display: flex;
  }
  #client_detail #client_data dl dt {
    border-bottom: none;
    padding-bottom: 15px;
    width: 200px;
  }
  #client_detail #client_data dl dd {
    margin-top: 0;
    padding-bottom: 15px;
    flex: 1;
  }
  #client_detail #client_map {
    margin-top: 40px;
  }
  #client_detail #client_map iframe {
    height: 400px;
  }
  #client_detail nav {
    padding-bottom: 30px;
  }
  #client_detail nav h3 {
    padding-top: 90px;
    font-size: 2.4rem;
  }
  #client_detail nav h3::after {
    background-position: 18px center;
    background-size: auto 48px;
    width: 80px;
    height: 80px;
  }
  #client_detail nav h3::before {
    top: 38px;
  }
  #client_detail nav ul {
    margin: 20px -10px 0;
    font-size: 2rem;
    display: flex;
    justify-content: center;
  }
  #client_detail nav ul li {
    margin-top: 0;
    padding: 0 10px;
    flex-basis: 80%;
  }
}

/* ---------------------------------------------
inquiry
--------------------------------------------- */
#form dl {
  margin-top: 30px;
  line-height: 1.4;
}

#form dl dt {
  border-bottom: #999 solid 1px;
  padding-bottom: 5px;
  font-weight: bold;
}

#form dl dt .required {
  background-color: red;
  margin-left: 10px;
  padding: 5px 10px;
  font-size: 1.4rem;
  line-height: 1.1;
  color: #fff;
  display: inline-block;
}

#form dl dd {
  margin-top: 10px;
}

#form dl dd .check_list {
  margin-top: -10px;
  display: flex;
  flex-wrap: wrap;
}

#form dl dd .check_list li {
  margin-top: 10px;
  width: 50%;
  box-sizing: border-box;
}

#form dl dd .error {
  margin-top: 5px;
  line-height: 1.2;
  color: red;
}

#form #btn_submit {
  margin-top: 30px;
}

#form #btn_submit button {
  background-color: #dc143c;
  border: none;
  margin: 0 auto;
  padding: 20px;
  width: 80%;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.1;
  color: #fff;
  text-align: center;
  display: block;
  box-sizing: border-box;
}

#form #btn_submit button:hover {
  background-color: #fe365e;
}

@media (min-width: 640px) {
  #form {
    margin-top: 40px;
  }
  #form dl {
    display: flex;
    align-items: center;
  }
  #form dl dt {
    border-bottom: none;
    padding-right: 20px;
    padding-bottom: 0;
    width: 220px;
    box-sizing: border-box;
  }
  #form dl dd {
    margin-top: 0;
    flex: 1;
  }
  #form dl dd .check_list li {
    width: 25%;
  }
  #form #btn_submit button {
    width: 360px;
    font-size: 3rem;
  }
}

/* ---------------------------------------------
column list
--------------------------------------------- */
#column_list > ol > li {
  border-bottom: #912600 dashed 1px;
  margin-top: 20px;
  padding-bottom: 5px;
  line-height: 1.4;
}

#column_list > ol > li header {
  font-size: 1.2rem;
  line-height: 1.2;
  display: flex;
  align-items: center;
}

#column_list > ol > li header time {
  margin-right: 1em;
  display: block;
}

#column_list > ol > li header a {
  background-color: #413c89;
  border: #413c89 solid 1px;
  padding: 5px 10px;
  text-decoration: none;
  color: #fff;
  display: block;
}

#column_list > ol > li header a:hover {
  background-color: #fff;
  color: #413c89;
}

#column_list > ol > li > a {
  padding: 10px 0;
  display: block;
}

#column_list .list_link {
  margin-top: 20px;
  font-weight: bold;
  line-height: 1.2;
}

#column_list .list_link a {
  background-color: #413c89;
  border: #413c89 solid 2px;
  margin: 0 auto;
  padding: 10px 30px 10px 10px;
  text-decoration: none;
  color: #fff;
  position: relative;
  display: block;
}

#column_list .list_link a::before, #column_list .list_link a::after {
  content: '';
  margin: auto 0;
  position: absolute;
  top: 0;
  bottom: 0;
  display: block;
}

#column_list .list_link a::before {
  background-color: #fff;
  border-radius: 50%;
  width: 16px;
  height: 16px;
  right: 10px;
}

#column_list .list_link a::after {
  border-color: transparent transparent transparent #413c89;
  border-style: solid;
  border-width: 5px 0 5px 8px;
  width: 0;
  height: 0;
  right: 13px;
}

#column_list .list_link a:hover {
  background-color: #635eab;
}

@media (min-width: 640px) {
  #column_list > ol {
    margin: 0 -10px;
    display: flex;
    flex-wrap: wrap;
  }
  #column_list > ol > li {
    margin-right: 10px;
    margin-left: 10px;
    width: calc(50% - 20px);
  }
  #column_list > ol > li header {
    font-size: 1.4rem;
  }
  #column_list .list_link {
    margin-top: 30px;
  }
  #column_list .list_link a {
    padding: 15px 35px 15px 15px;
    width: 80%;
    box-sizing: border-box;
  }
  #column_list .list_link a::before {
    right: 15px;
  }
  #column_list .list_link a::after {
    right: 18px;
  }
}

/* ---------------------------------------------
column detail
--------------------------------------------- */
#column_detail header {
  margin-top: 20px;
  font-size: 1.4rem;
  line-height: 1.2;
}

#column_detail header time {
  display: block;
}

#column_detail header a {
  background-color: #413c89;
  border: #413c89 solid 1px;
  margin-top: 5px;
  padding: 5px 10px;
  text-decoration: none;
  color: #fff;
  display: inline-block;
}

#column_detail header a:hover {
  background-color: #fff;
  color: #413c89;
}

#column_detail #table_of_contents {
  background-color: #f3f3f3;
  margin-top: 45px;
  padding: 10px;
}

#column_detail #table_of_contents h3 {
  background-color: #912600;
  margin: -25px 40px 0;
  padding: 5px 1px 5px 10px;
  font-size: 1.8rem;
  letter-spacing: 0.5em;
  line-height: 1.4;
  text-align: center;
  color: #fff;
}

#column_detail #table_of_contents ol {
  list-style-type: decimal-leading-zero;
  margin: 20px 0 0 2em;
}

#column_detail #table_of_contents ol li {
  margin-top: 0.5em;
  line-height: 1.4;
}

#column_detail .editor_block {
  margin-top: 30px;
}

#column_detail .editor_block > *:first-child {
  margin-top: 0;
}

@media (min-width: 640px) {
  #column_detail header {
    font-size: 1.6rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  #column_detail header a {
    margin-top: 0;
    display: block;
  }
  #column_detail #table_of_contents {
    margin-top: 55px;
    padding: 20px;
  }
  #column_detail #table_of_contents h3 {
    margin: -35px auto 0;
    width: 60%;
    box-sizing: border-box;
  }
  #column_detail .editor_block {
    margin-top: 40px;
  }
}

/* ---------------------------------------------
common page
--------------------------------------------- */
#common_page .common_block h3 {
  border-left: #912600 solid 10px;
  margin-top: 40px;
  padding-left: 10px;
  font-size: 2rem;
  line-height: 1.4;
}

#common_page .common_block ol {
  list-style-type: decimal;
  margin: 1.6em 0 0 2em;
  line-height: 1.4;
}

#common_page .common_block ol li {
  margin-top: 0.5em;
}

#common_page .common_block ol li:first-child {
  margin-top: 0;
}

#common_page .common_block ol.brackets_list {
  list-style-type: none;
  margin-left: 0;
}

#common_page .common_block ol.brackets_list li {
  counter-increment: brackets_list;
  padding-left: 2.5em;
  position: relative;
}

#common_page .common_block ol.brackets_list li::before {
  content: "(" counter(brackets_list) ")";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
}

#common_page .common_block ul {
  list-style-type: square;
  margin: 1.6em 0 0 1.25em;
  line-height: 1.4;
}

#common_page .common_block ul li {
  margin-top: 0.5em;
}

#common_page .common_block ul li:first-child {
  margin-top: 0;
}

#common_page .common_block address {
  background-color: #efefef;
  margin-top: 1.6em;
  padding: 10px;
}

#common_page .company_data dl {
  margin-top: 30px;
  line-height: 1.4;
}

#common_page .company_data dl dt {
  border-bottom: #999 solid 1px;
  padding-bottom: 5px;
  font-weight: bold;
}

#common_page .company_data dl dd {
  margin-top: 10px;
}

@media (min-width: 640px) {
  #common_page .company_data {
    margin-top: 40px;
  }
  #common_page .company_data dl {
    border-bottom: #999 solid 1px;
    padding-bottom: 15px;
    display: flex;
  }
  #common_page .company_data dl dt {
    border-bottom: none;
    padding-right: 20px;
    padding-bottom: 0;
    width: 200px;
    box-sizing: border-box;
  }
  #common_page .company_data dl dd {
    margin-top: 0;
    flex: 1;
  }
}

/* ---------------------------------------------
footer format
--------------------------------------------- */
#site_footer {
  margin-top: 60px;
}

#site_footer #footer_portal_links .inner h2 {
  border-bottom: #912600 solid 1px;
  padding-bottom: 10px;
  font-size: 2.4rem;
  line-height: 1.4;
  color: #912600;
}

#site_footer #footer_portal_links .inner ul {
  margin: 0 -5px;
  display: flex;
  flex-wrap: wrap;
}

#site_footer #footer_portal_links .inner ul li {
  margin-top: 10px;
  padding: 0 5px;
  width: 50%;
  box-sizing: border-box;
}

#site_footer #footer_portal_links .inner ul li a {
  display: block;
}

#site_footer #footer_copy_right {
  background-color: #912600;
  margin-top: 40px;
  padding-bottom: 20px;
}

#site_footer #footer_copy_right .inner ul {
  border-top: #413c89 solid 1px;
  margin: 0 -10px;
  font-size: 1.4rem;
  line-height: 1.4;
  display: flex;
  flex-wrap: wrap;
}

#site_footer #footer_copy_right .inner ul li {
  background-color: #fff;
  border-bottom: #413c89 solid 1px;
  border-right: #413c89 solid 1px;
  width: 50%;
  box-sizing: border-box;
}

#site_footer #footer_copy_right .inner ul li a {
  padding: 10px 30px 10px 10px;
  position: relative;
  display: block;
}

#site_footer #footer_copy_right .inner ul li a::after {
  content: '';
  border-color: transparent transparent transparent #413c89;
  border-style: solid;
  border-width: 7px 0 7px 10px;
  margin: auto 0;
  width: 0;
  height: 0;
  position: absolute;
  top: 0;
  right: 10px;
  bottom: 0;
  display: block;
}

#site_footer #footer_copy_right .inner ul li:nth-child(even) {
  border-right: none;
}

#site_footer #footer_copy_right .inner small {
  margin-top: 20px;
  font-size: 1.2rem;
  line-height: 1.2;
  text-align: center;
  color: #fff;
  display: block;
}

@media (min-width: 640px) {
  #site_footer {
    margin-top: 80px;
    min-width: 980px;
  }
  #site_footer #footer_portal_links .inner ul {
    margin: 0 -10px;
  }
  #site_footer #footer_portal_links .inner ul li {
    margin-top: 20px;
    padding: 0 10px;
    width: 25%;
  }
  #site_footer #footer_copy_right {
    margin-top: 60px;
    padding: 20px 0;
    padding-top: 20px;
  }
  #site_footer #footer_copy_right .inner ul {
    border: none;
    margin: -15px 0 0;
    text-align: center;
    display: block;
  }
  #site_footer #footer_copy_right .inner ul li {
    background-color: transparent;
    border: none;
    margin: 15px 1em 0;
    width: auto;
    display: inline-block;
  }
  #site_footer #footer_copy_right .inner ul li a {
    padding: 0;
    color: #fff;
    display: inline;
  }
  #site_footer #footer_copy_right .inner ul li a::after {
    display: none;
  }
}

/*
     FILE ARCHIVED ON 10:48:11 Mar 29, 2023 AND RETRIEVED FROM THE
     INTERNET ARCHIVE ON 03:26:23 Jun 30, 2026.
     JAVASCRIPT APPENDED BY WAYBACK MACHINE, COPYRIGHT INTERNET ARCHIVE.

     ALL OTHER CONTENT MAY ALSO BE PROTECTED BY COPYRIGHT (17 U.S.C.
     SECTION 108(a)(3)).
*/
/*
playback timings (ms):
  captures_list: 0.525
  exclusion.robots: 0.051
  exclusion.robots.policy: 0.04
  esindex: 0.01
  cdx.remote: 23.066
  LoadShardBlock: 121.126 (3)
  PetaboxLoader3.datanode: 6520.721 (5)
  PetaboxLoader3.resolve: 88.256 (2)
  load_resource: 6501.479
  loaddict: 270.875
*/