@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/NS-400.woff2') format('woff2'),
    url('fonts/NS-400.woff') format('woff');
  font-display: swap;
}
@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/NS-700.woff2') format('woff2'),
    url('fonts/NS-700.woff') format('woff');
  font-display: swap;
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
span,
small,
dl,
dt,
dd,
ol,
ul,
li {
  margin: 0px;
  font-size: 100%;
}
ul {
  margin: 0px;
  padding: 0px;
  vertical-align: baseline;
}
img {
  vertical-align: top;
  backface-visibility: hidden;
}
li {
  list-style-type: none;
  vertical-align: baseline;
}
input,
button,
textarea,
select {
  margin: 0px;
  padding: 0px;
  background: none;
  border: none;
  border-radius: 0px;
  outline: none;
  appearance: none;
}
html {
  font-size: 62.5%;
}
body {
  color: rgb(0, 0, 0);
  font-family: 'Noto Sans JP', YuGothic, 'Yu Gothic', æ¸¸ã‚´ã‚·ãƒƒã‚¯, æ¸¸ã‚´ã‚·ãƒƒã‚¯ä½“,
    'Open Sans', Arial, Verdana, 'ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro W3',
    'Hiragino Kaku Gothic Pro', ãƒ¡ã‚¤ãƒªã‚ª, Meiryo, 'ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯',
    'MS PGothic', sans-serif;
}
h2,
h3,
h4,
h5,
h6 {
  letter-spacing: 0.1rem;
  font-weight: 600;
}
.sp {
  display: none;
}
.pc_br {
  display: block;
}
.sp_br {
  display: none;
}
body {
  font-size: 1.5rem;
  line-height: 2em;
  min-width: 600px;
  height: 100%;
  overflow-x: hidden;
  position: relative;
  padding: 0px;
}
img {
  max-width: 100%;
  height: auto;
}
a {
  color: rgb(0, 0, 0);
  text-decoration: none;
}
a:hover {
}
.fl {
  float: left;
}
.fr {
  float: right;
}
.strong {
  font-weight: bold;
}
.f110 {
  font-size: 110%;
}
.f120 {
  font-size: 120%;
}
.f130 {
  font-size: 130%;
}
.f150 {
  font-size: 150%;
}
.f200 {
  font-size: 200%;
}
.f300 {
  font-size: 300%;
}
.ab {
  position: absolute;
}
.min {
  font-family: æ¸¸æ˜Žæœ, 'Yu Mincho', æ¸¸æ˜Žæœä½“, YuMincho, 'Roboto Slab', Garamond,
    'Times New Roman', 'ãƒ’ãƒ©ã‚®ãƒŽæ˜Žæœ Pro W3', 'Hiragino Mincho Pro',
    HiraMinProN-W3, HGSæ˜ŽæœE, 'ï¼­ï¼³ ï¼°æ˜Žæœ', 'MS PMincho', serif;
}
.vertical {
  writing-mode: vertical-rl;
}
.relative {
  position: relative;
}
.center {
  text-align: center;
}
.fc_green {
  color: rgb(73, 151, 81);
}
p span,
.marker {
  background: linear-gradient(transparent 70%, rgb(255, 210, 183) 60%);
  font-size: 1.5rem;
  font-weight: 700;
}
.txt_bold {
  background: none;
  font-weight: bold;
}
.wrapper {
  position: relative;
}
.bg_fix {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  min-height: 100vh;
  background: url('img/deco_key_house01.png') left -250px bottom -250px / 700px
      no-repeat,
    url('img/deco_key_house02.png') right -150px bottom -100px / 700px no-repeat,
    url('img/deco_cloud.png') 50% 30px / auto no-repeat,
    url('img/bg_rep01.gif') 0% 0% / auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.bg_fix .leftCont,
.bg_fix .rightCont {
  width: calc(50% - 250px);
  position: relative;
}
.bg_fix .leftCont #pageListPc .decoTit {
  display: block;
  padding: 0px;
  background: url('img/icon_plus.png') right 0px top 50% / 16px no-repeat;
}
.bg_fix .leftCont #pageListPc .decoTit:hover {
  opacity: 0.7;
  cursor: pointer;
}
.bg_fix .leftCont #pageListPc .decoTit.open {
  background: url('img/icon_minus.png') right 0px top 50% / 16px no-repeat;
}
.bg_fix .leftCont #pageListPc .decoTit .sTit {
  width: 100%;
  padding: 15px 0px;
  writing-mode: inherit;
  font-size: 1.8rem;
  font-weight: 700;
  position: relative;
  margin: 0px;
}
.bg_fix .leftCont #pageListPc #toc {
  border-top: 2px solid rgb(0, 0, 0);
  width: 100%;
  padding: 20px 0px;
}
.bg_fix .leftCont #pageListPc ul {
  margin: 0px;
  padding: 0px;
}
.bg_fix .leftCont #pageListPc {
  width: 90%;
  margin: 50px auto;
  display: block;
  border: 3px solid rgb(0, 0, 0);
  border-radius: 20px;
  padding: 0px 20px;
  background: rgb(255, 255, 255);
}
.bg_fix .leftCont #pageListPc ul li {
  padding: 0px;
  margin: 0px 0px 10px;
  position: relative;
  background: none;
  line-height: 2.6rem;
}
.bg_fix .leftCont #pageListPc #toc {
}
.bg_fix .leftCont #pageListPc #toc > ul > li {
  counter-increment: count 1;
  padding: 0px 0px 0px 25px;
}
.bg_fix .leftCont #pageListPc #toc > ul > li::after {
  content: counter(count, decimal-leading-zero);
  position: absolute;
  top: 15px;
  left: 25px;
  transform: translate(0px, -50%);
  color: rgb(235, 138, 79);
  font-size: 1.6rem;
  font-weight: 700;
  text-indent: -0.5rem; 
}
.bg_fix .leftCont #pageListPc ul li:last-child {
  margin: 0px;
}
.bg_fix .leftCont #pageListPc ul li span {
  font-size: 1.5rem;
  color: rgb(34, 34, 34);
}
.bg_fix .leftCont #pageListPc ul ul {
  margin: 0px;
  padding: 0px 0px 20px 35px;
}
.bg_fix .leftCont #pageListPc .chapter .chapter li a {
  padding: 0px;
  line-height: 2.4rem;
}
.bg_fix .leftCont #pageListPc .chapter .chapter li {
  padding: 0px 0px 0px 15px;
  text-indent: 0px;
  background: url('img/arr_sub.png') left 0px top 15% / 6px no-repeat;
  font-size: 1.5rem;
  line-height: 2.4rem;
}
.bg_fix .leftCont #pageListPc .chapter .chapter li::before {
  content: '';
  background: url('img/arr_sub.png') 0px 0px / 8px no-repeat;
  width: 8px;
  height: 13px;
  margin: -10px 6px 0px 0px;
  vertical-align: middle;
  display: none;
}
.bg_fix .leftCont #pageListPc ul li a {
  text-decoration: none;
  padding: 0px 15px 0px 25px;
  display: block;
  line-height: 3rem;
  position: relative;
  text-indent: 0px;
  
}
.bg_fix .leftCont #pageListPc ul li a:hover {
  text-decoration: underline;
}
.bg_fix .leftCont #pageListPc ul li br {
  display: none;
}
.bg_fix .rightCont .bnFix {
  position: absolute;
  right: calc(50% - 158px);
  bottom: 40px;
}
.bg_fix .rightCont .bnFix a {
  background: rgb(229, 136, 73);
  color: rgb(255, 255, 255);
  text-align: center;
  font-size: 1.8rem;
  line-height: 2.8rem;
  padding: 15px 50px;
  display: block;
  border-radius: 50px;
  position: relative;
}
.bg_fix .rightCont .bnFix a::before {
  content: '';
  background: url('img/arr_readmore_green.png') 50% 50% / 110px no-repeat;
  width: 110px;
  height: 50px;
  position: absolute;
  right: -20px;
  bottom: -18px;
}
.bg_fix .rightCont .bnFix .ab {
  top: -180px;
  left: calc(50% - 100px);
}
.bg_fix .rightCont .bnFix .ab {
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-duration: 2s;
  animation-name: anim1;
}
.bg_fix .rightCont .bnFix .ab img {
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-duration: 2s;
  animation-name: anim2;
}
.bg_fix .rightCont .bnFix a:hover {
  opacity: 0.7;
}
@keyframes anim1 {
  0% {
    transform: rotate(0deg);
  }
  50% {
    transform: rotate(0deg);
  }
  80% {
    transform: rotate(-1deg);
  }
  85% {
    transform: rotate(0deg);
  }
  90% {
    transform: rotate(-1deg);
  }
  100% {
    transform: rotate(1deg);
  }
}
@keyframes anim2 {
  0% {
    transform: translate(0px, 0px);
  }
  50% {
    transform: translate(0px, 0px);
  }
  100% {
    transform: translate(0px, -10px);
  }
}
.center_cont_wrap {
  position: absolute;
  top: 0px;
  min-height: 100vh;
  left: calc(50% - 250px);
  max-width: 500px;
  overflow: hidden;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 30px;
  background: url('img/bg_rep01.gif');
}
.center_cont {
  width: 100%;
  position: relative;
}
@media screen and (max-width: 1140px) {
  .bg_fix .leftCont,
  .bg_fix .rightCont {
    display: none;
  }
}
header .inner {
  padding: 5px 20px;
}
.sitename_wrap {
  padding: 5px 10px;
}
.sitename,
.sitename a {
  position: relative;
  font-size: 1.2rem;
  font-weight: normal;
  line-height: 2rem;
}
.sitename:before {
    content: "PR";
    display: inline-block;
    background: #000;
    color: #fff;
    text-align: center;
    width: 3rem;
    margin-right: 1rem;
    font-size: 1.2rem;
}
.sitename a:hover {
  text-decoration: none;
  opacity: 0.7;
}
.overlay {
  content: '';
  display: block;
  width: 0px;
  height: 0px;
  background-color: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 5;
  opacity: 0;
  transition: opacity 0.5s ease 0s;
}
body.fix {
  position: fixed;
  left: 0px;
  right: 0px;
}
.overlay.open {
  width: 100%;
  height: 100%;
  opacity: 1;
}
.out-frame {
  height: 100%;
  min-height: 100vh;
  transition: all 0.5s ease 0s;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.bargOut {
  position: fixed;
  z-index: 5;
  width: 500px;
  left: calc(var(--vwpx) * 100);
}
.bargBg {
  background: rgb(255, 255, 255);
  border-radius: 50%;
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 100;
  transform: translateX(0px);
  transition: transform 0.5s ease 0s;
  width: 60px;
  height: 60px;
  cursor: pointer;
}
.bargOut .bargBg.active {
  display: none;
}
.bargBg:hover {
  opacity: 0.7;
}
.menu-trigger {
  display: inline-block;
  width: 36px;
  height: 28px;
  vertical-align: middle;
  cursor: pointer;
}
.bargBg span {
  display: inline-block;
  box-sizing: border-box;
  position: absolute;
  left: 17px;
  width: 26px;
  height: 2px;
  background-color: rgb(229, 136, 73);
}
.bargBg.active span {
  background-color: rgb(229, 136, 73);
}
.bargBg span:nth-of-type(1) {
  top: 17px;
}
.bargBg.active span:nth-of-type(1) {
  transform: translateY(12px) rotate(-45deg);
}
.bargBg span:nth-of-type(2) {
  top: 29px;
}
.bargBg.active span:nth-of-type(2) {
  opacity: 0;
}
.bargBg span:nth-of-type(3) {
  top: 41px;
}
.bargBg.active span:nth-of-type(3) {
  transform: translateY(-12px) rotate(45deg);
}
.g-nav-wrap {
  position: fixed;
  top: 0px;
  max-width: 500px;
  height: 100vh;
  left: 0px;
  right: 0px;
  margin: auto;
  z-index: 50;
  overflow: hidden;
  visibility: hidden;
}
nav {
  overflow-y: scroll;
  width: 400px;
  height: 100%;
  background: url('img/bg_rep02.gif');
  position: absolute;
  top: 0px;
  right: 0px;
  z-index: 10;
  transform: translate(400px);
  transition: all 0.5s ease 0s;
  visibility: visible;
}
nav.open {
  transform: translateZ(0px);
}
#g-nav .bargBg {
  position: absolute;
  top: 0px;
  right: 0px;
  background: none;
}
#g-nav .bargBg span {
  background: rgb(0, 0, 0);
}
nav li {
  color: rgb(255, 255, 255);
  text-align: center;
}
* {
  box-sizing: border-box;
}
ul {
  list-style: none;
}
#g-nav .accordion:first-child {
  margin-top: 60px;
}
.header-menu ul.accordion ul {
  display: none;
}
#g-nav .accordion li:first-child {
  border-top: 1px solid rgb(255, 255, 255);
}
#g-nav .accordion:last-child {
  border-bottom: 1px solid rgb(255, 255, 255);
}
#g-nav .accordion li a {
  display: block;
  text-align: left;
  padding: 15px 28px 15px 15px;
  font-size: 1.5rem;
  color: rgb(0, 0, 0);
  background: url('img/arr_black01.png') 96% 50% / 12px no-repeat,
    url('img/bg_rep02.gif') 0% 0% / auto, rgb(255, 255, 255);
}
#g-nav .accordion li .tglMenu {
  text-align: left;
  color: rgb(0, 0, 0);
  padding: 15px 30px 15px 15px;
  background: url('img/arr_white_down.png') 96% 50% / 18px no-repeat,
    url('img/bg_rep02.gif') 0% 0% / auto, rgb(255, 255, 255);
  image-rendering: -webkit-optimize-contrast;
}
#g-nav .accordion li .tglMenu:hover {
  opacity: 0.7;
  cursor: pointer;
}
#g-nav .accordion li .tglMenu.open {
  background: url('img/arr_white_up.png') 96% 50% / 18px no-repeat,
    url('img/bg_rep02.gif') 0% 0% / auto, rgb(255, 255, 255);
}
#g-nav .accordion li a,
#g-nav .accordion li .tglMenu {
  line-height: 2rem;
}
#g-nav .accordion li ul li a {
  padding: 15px 30px 15px 20px;
  color: rgb(0, 0, 0);
  background: url('img/arr_black01.png') 96% 50% / 12px no-repeat
    rgb(255, 255, 255);
}
#g-nav .accordion li ul li a:hover {
  opacity: 0.8;
}
#g-nav .accordion li ul li {
  border-bottom: none;
  border-top: 1px dotted rgb(219, 238, 205);
}
#contents {
  padding: 0px;
}
#index,
#category,
#page {
  margin: 0px;
  padding: 0px;
}
#category,
#page {
  width: 100%;
  position: relative;
  margin: 0px auto;
  padding: 0px 4%;
}
#category blockquote,
#page blockquote{
  margin:0;
}

.key_sec .inner {
  padding: 30px 0px;
}
.key_sec .logo {
  width: 200px;
  margin: 0px auto;
}
.key_sec .logo a:hover {
  opacity: 0.7;
}
#page-top {
  display: block;
  width: 138px;
  margin: 0px auto 30px;
}
#page-top:hover {
  opacity: 0.7;
}
#pankuzuWrap {
  margin: 0px auto 40px;
  padding: 0px 4%;
}
#pankuzu {
  width: 100%;
  overflow: auto;
  white-space: nowrap;
  font-size: 1.2rem;
  margin: 0px auto;
  color: rgb(153, 153, 153);
  line-height: 2.6rem;
}
#pankuzu span {
  font-size: 1.2rem;
  color: rgb(153, 153, 153);
}
#pankuzu a {
  color: rgb(153, 153, 153);
}
#pankuzu * {
}
#pankuzu a:hover {
  text-decoration: underline;
}
#pankuzu:hover {
  cursor: pointer;
}
#pankuzu::-webkit-scrollbar-track {
  border-radius: 2px;
  background: rgb(238, 238, 238);
}
#pankuzu::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: rgb(222, 222, 222);
}
#pankuzu::-webkit-scrollbar {
  height: 5px;
}
footer {
  margin: 100px 0px 0px;
  padding: 40px 0px 0px;
  background: url('img/bg_rep02.gif');
  position: relative;
  z-index: 3;
}
footer .foot_logo {
  width: 240px;
  margin: 30px auto;
}
footer .foot_logo a:hover {
  opacity: 0.7;
}
footer .foot_logo .sitename {
  font-size: 2.1rem;
  text-align: left;
  line-height: 2.4rem;
  font-weight: 600;
}
footer .areaInner {
  margin: 0px auto;
  padding: 0px;
}
footer a {
  text-decoration: none;
  color: rgb(0, 0, 0);
}
footer a:hover {
  text-decoration: underline;
}
footer .areaInner .footBox {
  margin: 0px 0px 30px;
}
footer .areaInner .footBox .sttl {
  border-bottom: 1px solid rgb(0, 0, 0);
  padding: 0px 0px 6px;
  margin: 0px 0px 14px;
}
footer .areaInner .footBox .sttl a {
  background: url('img/arr_black2.png') 3px 50% / 22px no-repeat;
  display: inline-block;
  font-size: 1.5rem;
  font-weight: bold;
  padding: 3px 0px 3px 32px;
}
footer .areaInner .smap {
  margin: 0px 0px 50px;
}
footer .areaInner .smap .sttl a {
  font-size: 1.5rem;
  font-weight: 600;
}
footer .foot_link {
  font-size: 1.5rem;
  text-align: right;
  margin-bottom: 50px;
}
footer .foot_link a {
  font-size: 1.5rem;
  text-decoration: underline;
}
footer .foot_link a:nth-child(1) {
  display: inline-block;
  margin-right: 15px;
}
footer .foot_link a:nth-child(2) {
  display: inline-block;
  margin-left: 15px;
}
footer .foot_link a:hover {
  text-decoration: none;
}
footer .footBox ul {
  padding: 0px 20px;
}
footer .areaInner .footBox .accChild {
  padding: 0px 0px 0px 10px;
  box-sizing: border-box;
}
footer .areaInner .footBox .accChild li {
  background: none;
}
footer .areaInner .footBox .accChild li.subCat {
  margin: 0px 30px 0px 0px;
  padding: 0px;
}
footer .areaInner .footBox .accChild li.subCat::after {
  content: 'ã€€/ã€€';
  letter-spacing: 0px;
  color: rgb(0, 0, 0);
}
footer .areaInner .footBox .accChild .sp + li::before {
  letter-spacing: 0px;
}
footer .areaInner .footBox .accChild .sp + li::before {
  letter-spacing: 0px;
}
footer .areaInner .footBox .accChild .sp + li.subCat::before {
  content: '';
}
footer .areaInner .footBox .accChild .subList li::after {
  content: 'ã€€/ã€€';
  letter-spacing: 0px;
  color: rgb(0, 0, 0);
}
footer .areaInner .footBox .accChild li {
  display: inline-block;
  margin: 0px 20px 0px 0px;
}
footer .areaInner .footBox .accChild li.sp {
  display: none;
}
footer .areaInner .footBox .accChild li a {
  font-size: 1.5rem;
  font-weight: normal;
  padding: 0px 0px 0px 16px;
}
footer .areaInner .footBox .accChild .subList li:first-child::before {
  content: 'ã€€/ã€€';
  letter-spacing: 0px;
  color: rgb(0, 0, 0);
}
footer .areaInner .footBox .accChild .subList {
  display: inline-block;
  padding: 0px;
  margin: 0px;
}
footer .areaInner .footBox .accChild .subList li {
  padding: 0px;
  display: inline-block;
  margin: 0px;
}
footer .areaInner .footBox .accChild .subList li a {
  padding: 0px 10px;
  font-size: 1.3rem;
}
footer .areaInner .noticeArea {
  box-sizing: border-box;
  width: 90%;
  background-color: rgb(255, 255, 255);
  padding: 20px 30px;
  margin: 0px auto;
  border-radius: 10px;
}
footer .areaInner .noticeArea p {
  color: rgb(0, 0, 0);
  font-size: 1.2rem;
  margin: 0px;
  line-height: 2.6rem;
}
footer .botPrg {
  padding: 15px 0px 0px;
  margin: 0px 0px 50px;
  text-align: center;
  font-size: 1.2rem;
  color: rgb(0, 0, 0);
}
footer .botArea {
  padding: 13px 0px;
  background: rgb(255, 255, 255);
}
footer .botArea .botInner {
  margin: 0px auto;
  position: relative;
}
footer .botArea .botInner .smap a {
  background: url('img/arr_white.png') 2px 50% / 22px no-repeat;
  padding: 2px 0px 2px 30px;
  text-decoration: none;
  color: rgb(0, 0, 0);
}
footer .botArea .botInner .smap a:hover {
  text-decoration: underline;
}
footer p.copy {
  padding: 0px;
  margin: 0px;
  font-size: 12px;
  text-align: center;
  color: rgb(0, 0, 0);
}
footer p.copy a {
  color: rgb(0, 0, 0);
  text-decoration: none;
}
footer .areaInner {
  box-sizing: border-box;
  position: relative;
  width: 100%;
  margin: 0px auto;
  padding: 0px;
  border-top: 1px solid rgb(255, 255, 255);
}
footer .areaInner .footBox {
  margin: 0px;
}
footer .areaInner .footBox .sttl a {
  display: block;
  box-sizing: border-box;
  font-size: 1.5rem;
  color: rgb(0, 0, 0);
  background: url('img/arr_white_down.png') right 15px center / 20px no-repeat,
    url('img/bg_rep02.gif') 0% 0% / auto;
  padding: 15px 40px 15px 4%;
  text-decoration: none;
}
footer .areaInner .footBox .sttl a:hover {
  cursor: pointer;
}
footer .areaInner .footBox .sttl.open a {
  background: url('img/arr_white_up.png') right 15px center / 20px no-repeat,
    url('img/bg_rep02.gif') 0% 0% / auto;
}
footer .areaInner .footBox .sttl {
  border-bottom: 1px solid rgb(255, 255, 255);
  padding: 0px;
  margin: 0px;
  image-rendering: -webkit-optimize-contrast;
}
footer .areaInner .footBox .sttl.sitemap a {
  background: url('img/arr_white.png') right 15px center / 20px no-repeat,
    url('img/bg_rep02.gif') 0% 0% / auto;
}
footer .areaInner .footBox .accChild {
  display: none;
  padding: 0px;
  margin: 0px;
  box-sizing: border-box;
  background: rgb(255, 255, 255);
}
footer .areaInner .footBox .accChild li {
  display: block;
  float: none;
  padding: 0px;
  background: none;
  margin: 0px;
  image-rendering: -webkit-optimize-contrast;
}
footer .areaInner .footBox .accChild li.sp {
  display: block;
}
footer .areaInner .footBox .accChild li.sp a {
}
footer .areaInner .footBox .accChild li a {
  display: block;
  box-sizing: border-box;
  background: url('img/arr_black01.png') right 18px center / 14px no-repeat;
  color: rgb(0, 0, 0);
  border-bottom: 1px dotted rgb(219, 238, 205);
  padding: 10px 40px 10px 4%;
  font-size: 1.4rem;
}
footer .areaInner .footBox .accChild li.subCat {
  margin: 0px;
}
footer .areaInner .footBox .accChild li.subCat a {
  display: block;
  box-sizing: border-box;
  background: url('img/arr_black01.png') right 18px center / 14px no-repeat;
  color: rgb(0, 0, 0);
  border-bottom: 1px dotted rgb(219, 238, 205);
  padding: 10px 40px 10px 6%;
}
footer .areaInner .footBox .accChild li.subCat:last-child li:last-child a {
  border: none;
}
footer .areaInner .footBox .accChild .subList {
  padding: 0px;
  margin: 0px;
  display: block;
}
footer .areaInner .footBox .accChild .subList li {
  display: block;
}
footer .areaInner .footBox .accChild .subList li:first-child::before {
  content: '';
}
footer .areaInner .footBox .accChild .subList li a {
  padding: 10px 40px 10px 10%;
  background: url('img/arr_black01.png') right 18px center / 14px no-repeat;
}
footer .areaInner .footBox .accChild .subList li::after {
  content: '';
}
footer .areaInner .footBox .accChild li::after {
  content: '';
}
footer .areaInner .footBox .accChild li.subCat::after {
  content: '';
}
footer .areaInner .footBox .accChild li:last-child::after {
  content: '';
}
footer .areaInner .noticeArea {
  width: 90%;
  margin: 30px auto 10px;
  padding: 20px;
  box-sizing: border-box;
  font-size: 1.4rem;
  line-height: 1.8em;
}
footer .areaInner .noticeArea p {
  font-size: 1.3rem;
}
footer .botPrg {
  padding: 0px;
  margin: 0px 0px 30px;
  text-align: center;
  font-size: 1.3rem;
}
footer .botArea {
  padding: 15px;
}
footer .botArea .botInner {
  width: 100%;
}
footer .noticeArea p.botPrg {
  padding: 6px 0px 2px;
  text-align: center;
}
footer p.copy {
  margin: 0px;
  padding: 10px 20px;
  font-size: 1.3rem;
  line-height: 2rem;
  text-align: center;
}
footer p.copy .add_pr {
  background: none;
  font-size: 1.3rem;
  font-weight: 400;
}
footer p.copy .add_pr::before {
  content: '\3010PR\3011';
}
footer p.copy a {
  text-decoration: underline;
}
footer p.copy a:hover {
  text-decoration: none;
}
footer a {
  text-decoration: none;
}
#contents .temp_inner {
}
#contents .caption {
  display: block;
  text-align: center;
  white-space: nowrap;
  overflow: auto hidden;
}
.caption::-webkit-scrollbar {
  height: 5px;
}
.caption::-webkit-scrollbar-thumb {
  border-radius: 2px;
  background: rgb(221, 221, 221);
}
.caption::-webkit-scrollbar-track {
  border-radius: 5px;
  background: rgb(238, 238, 238);
}
#index h2,
#category h1,
#page h1 {
  color: rgb(0, 0, 0);
  background: url('img/bg_rep02.gif');
  font-weight: 600;
  font-size: 3rem;
  line-height: 4.6rem;
  margin: 100px 0px 40px;
  padding: 25px 20px;
  text-align: center;
  position: relative;
  border-radius: 50px 50px 0px 0px;
}
#index h2::before,
#category h1::before,
#page h1::before {
  content: '';
  background: url('img/deco_sech2.png') 50% 50% / 200px no-repeat;
  width: 200px;
  height: 90px;
  position: absolute;
  top: -75px;
  left: calc(50% - 100px);
}
#index h3,
#category h2,
#page h2 {
  background: url('img/bg_rep02.gif');
  margin: 35px 0px 30px;
  padding: 15px 20px 15px 30px;
  font-size: 2.8rem;
  line-height: 4rem;
  text-align: left;
  position: relative;
  color: rgb(0, 0, 0);
  overflow: hidden;
  border-radius: 20px;
}
#index h3::before,
#category h2::before,
#page h2::before {
  content: '';
  background: rgb(73, 151, 81);
  position: absolute;
  top: 0px;
  left: 0px;
  width: 8px;
  height: 100%;
}
#index h3 a,
#category h2 a,
#page h2 a {
  display: block;
  background: url('img/arr_black01.png') right 0px top 50% / 18px no-repeat;
  padding: 0px 20px 0px 0px;
}
#index h3 a,
#category h2 a,
#page h2 a {
  text-decoration: none;
}
#index h3 a:hover,
#category h2 a:hover,
#page h2 a:hover {
  opacity: 0.5;
}
#index h4,
#category h3,
#page h3 {
  padding: 17px 0px;
  border-bottom: 4px solid rgb(204, 204, 204);
  margin: 35px 0px 30px;
  font-size: 2.4rem;
  line-height: 3.2rem;
  text-align: left;
  color: rgb(0, 0, 0);
  position: relative;
}
#index h4::before,
#category h3::before,
#page h3::before {
  content: '';
  background: rgb(73, 150, 80);
  display: inline-block;
  width: 80px;
  height: 4px;
  position: absolute;
  bottom: -4px;
  left: 0px;
}
#index h4 a,
#category h3 a,
#page h3 a {
  text-align: left;
  display: block;
  background: url('img/arr_black01.png') right 15px top 50% / 18px no-repeat;
  padding: 0px 35px 0px 0px;
}
#index h3 a,
#category h2 a,
#page h2 a {
  text-decoration: none;
}
#index h4 a:hover,
#category h3 a:hover,
#page h3 a:hover {
  opacity: 0.5;
}
#index h5,
#category h6,
#category h4,
#category h5,
#category h6,
#page h4,
#page h5,
#page h6 {
  position: relative;
  margin: 35px 0px 20px;
  padding: 0px 0px 15px;
  background: linear-gradient(
      to right,
      rgb(73, 150, 80) 0%,
      rgb(73, 150, 80) 50%,
      rgba(0, 0, 0, 0) 20%,
      rgba(0, 0, 0, 0) 70%
    )
    left bottom / 8px 2px repeat-x;
  font-size: 2.2rem;
}
#index h5 a,
#category h6 a,
#category h4 a,
#category h5 a,
#category h6 a,
#page h4 a,
#page h5 a,
#page h6 a {
  position: relative;
  display: block;
  background: url('img/arr_black01.png') right 15px top 50% / 18px no-repeat;
  padding: 0px 35px 0px 0px;
  font-size: 2.2rem;
}
#index h5 a:hover,
#category h6 a:hover,
#category h4 a:hover,
#category h5 a:hover,
#category h6 a:hover,
#page h4 a:hover,
#page h5 a:hover,
#page h6 a:hover {
  opacity: 0.5;
}
#contents ul {
  margin: 20px 0px;
  padding: 10px 10px 0px 0px;
}
#contents ul li {
  padding: 0px 0px 6px 22px;
  background: url('./img/listicon.png') 2px 10px / auto 14px no-repeat;
}
#contents ul li a {
  text-decoration: underline;
}
#contents ul li a:hover {
  text-decoration: none;
}
#contents ol {
  margin: 20px 0px;
  padding: 10px 14px 0px 0px;
  counter-reset: number 0;
}
#contents ol li {
  padding: 0px 0px 6px 22px;
  list-style: none;
  position: relative;
  counter-increment: number 1;
}
#contents ol li::before {
  display: block;
  background-color: rgb(243, 133, 111);
  width: 18px;
  height: 18px;
  position: absolute;
  top: 6px;
  left: 0px;
  color: rgb(255, 255, 255);
  text-align: center;
  line-height: 1.5;
  font-size: 1.2rem;
  border-radius: 5px;
}
#contents ol li:nth-child(-n + 9)::before {
  content: counter(number, decimal-leading-zero);
}
.sitemap ul a {
  text-decoration: underline;
}
.sitemap ul a:hover {
  text-decoration: none;
}
#contents table {
  width: 100%;
  table-layout: fixed;
  margin: 30px auto;
}
#contents table th,
#contents table td {
  word-break: break-all;
}
#contents table th {
  width: 24%;
  padding: 14px 16px;
  background: rgb(255, 250, 247);
  border: 2px solid rgb(204, 204, 204);
  line-height: 1.5;
  text-align: center;
  font-size: 1.5rem;
  font-weight: bold;
}
#contents table td {
  line-height: 1.5;
  padding: 13px;
  border: 2px solid rgb(204, 204, 204);
  background: rgb(255, 255, 255);
  font-size: 1.5rem;
  text-align: left;
  overflow-wrap: break-word;
}
.float-wrap {
  margin: 30px auto;
  padding: 0px;
}
.float-wrap img {
  width: 100%;
}
.float-wrap .catch {
  font-size: 2rem;
  color: rgb(73, 151, 81);
  font-weight: 600;
  margin: 0px 0px 20px;
  line-height: 3.2rem;
  padding: 0px;
}
.float-wrap p {
  margin: 0px;
  padding: 0px;
  width: auto;
}
#contents .float-wrap ul {
  display: inline-block;
  margin: 15px 0px;
  padding: 0px;
}
.float-wrap .fl {
  width: 100%;
  padding: 0px 40px 10px 0px;
  text-align: center;
}
.float-wrap .fr {
  width: 100%;
  padding: 0px 0px 10px 40px;
  text-align: center;
}
.float-wrap .center {
  width: 100%;
  margin: 0px auto;
  padding: 0px 0px 20px;
  text-align: center;
}
#contents .float-wrap table {
  width: 55%;
  margin: 2rem 0px 3rem;
}
#contents .float-wrap table th {
  width: 42%;
}
.caption {
  margin: 5px 0px 30px;
  font-size: 1rem;
  line-height: 1.8rem;
  word-break: break-all;
  color: rgb(153, 153, 153);
}
.caption a {
  color: rgb(153, 153, 153);
  text-decoration: underline;
}
.caption a:hover {
  color: rgb(153, 153, 153);
  text-decoration: none;
}
.btn-link a,
.btn-internal a,
.btn-web a,
.btn-link2 a {
  box-sizing: border-box;
  border-radius: 40px;
  text-decoration: none;
}
.btn-link {
  margin: 20px 0px;
  text-align: center;
}
.btn-link a {
  font-size: 1.6rem;
  color: rgb(0, 0, 0);
  font-weight: 700;
  display: inline-block;
  background: url('img/arr_black2.png') 100% 50% / 18px no-repeat;
  padding: 4px 28px 4px 0px;
  line-height: 1.3;
  text-decoration: underline;
}
.btn-link a:hover {
  text-decoration: none;
}
.btn-internal {
  width: 80%;
  margin: 30px auto;
}
.btn-web {
  width: 80%;
  margin: 30px auto;
}
.btn-link2 {
  width: 80%;
  margin: 30px auto;
}
.btn-internal a {
  background: url('img/arr_orange.png') right 20px top 50% / 20px no-repeat
    rgb(255, 255, 255);
  color: rgb(229, 136, 73);
  border: 3px solid rgb(229, 136, 73);
  font-size: 1.6rem;
  font-weight: 700;
  display: block;
  text-align: center;
  padding: 18px 50px 18px 30px;
  position: relative;
  line-height: 2.4rem;
}
.btn-internal a:hover {
  opacity: 0.8;
}
.btn-tel {
  display: none;
}
.btn-web a {
  background: url('img/icon_web.png') left 20px top 50% / 18px no-repeat
    rgb(235, 138, 79);
  color: rgb(255, 255, 255);
  font-size: 1.6rem;
  font-weight: 700;
  display: block;
  text-align: center;
  padding: 18px 30px 18px 50px;
  position: relative;
  line-height: 2.4rem;
  border-radius: 30px;
}
.btn-web a:hover {
  opacity: 0.8;
}
.btn-link2 a {
  background: url('img/arr_white.png') right 20px top 50% / 20px no-repeat
    rgb(153, 153, 153);
  color: rgb(255, 255, 255);
  font-size: 1.6rem;
  font-weight: 700;
  display: block;
  text-align: center;
  padding: 18px 50px 18px 30px;
  position: relative;
  line-height: 2.4rem;
  text-decoration: none;
}
.auto {
  margin: 0px auto;
}
p {
  margin: 0px 0px 2rem;
}
p a {
  text-decoration: underline;
}
p a:hover {
  text-decoration: none;
  opacity: 0.8;
}
.sResults {
  margin: 3rem 0px 0px;
}
#page.sitemap {
  width: 1000px;
  margin: 0px auto;
}
#page.sitemap li a:hover {
  text-decoration: underline;
}
#contents #pageList ul li {
  padding: 0px;
  margin: 0px 0px 10px;
  text-indent: -2.2rem;
  background: none;
  position: relative;
}
#contents #pageList #toc > ul > li,
#contents #pageList #toc2 > ul > li {
  counter-increment: count 1;
  padding: 0px 0px 0px 25px;
}
#contents #pageList #toc > ul > li::after,
#contents #pageList #toc2 > ul > li::after {
  content: '0' counter(count);
  position: absolute;
  top: 15px;
  left: 25px;
  transform: translate(0px, -50%);
  color: rgb(235, 138, 79);
  font-size: 1.5rem;
  font-weight: 600;
}
#contents #pageList ul li:last-child {
  margin: 0px;
}
#contents #pageList ul li a {
}
#contents #pageList ul li span {
  font-size: 1.5rem;
  color: rgb(34, 34, 34);
}
#contents #pageList ul ul {
  margin: 0px;
  padding: 0px 0px 0px 20px;
}
#contents #pageList .chapter .chapter li a {
  padding: 0px;
  line-height: 2.4rem;
}
#contents #pageList .chapter .chapter li {
  padding: 0px 0px 0px 22px;
  text-indent: 0px;
  font-size: 1.3rem;
}
#contents #pageList .chapter .chapter li::before {
  content: '';
  background: url('img/arr_sub.png') 0px 0px / 8px no-repeat;
  width: 8px;
  height: 13px;
  display: inline-block;
  margin: -10px 6px 0px 0px;
  vertical-align: middle;
}
#contents #pageList ul li a {
  padding: 0px 0px 0px 25px;
  display: block;
  line-height: 3rem;
  text-decoration: none;
  position: relative;
}
#contents #pageList ul li a:hover {
  text-decoration: underline;
}
#contents #pageList ul li br {
  display: none;
}
.comCont01_sec {
  padding: 60px 0px 80px;
}
.comCont01 .titArea .idxh2 {
  text-align: center;
  color: rgb(0, 0, 0);
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 4.6rem;
  margin-top: 0px;
  margin-bottom: 40px;
  padding: 0px;
  position: relative;
  background: none;
  letter-spacing: 0.2rem;
  border: none;
}
.comCont01 .titArea .idxh2 a:hover {
  opacity: 0.7;
}
.comCont01 .titArea .idxh2 a::after {
  content: '';
  position: absolute;
  top: calc(50% - 10px);
  right: 0px;
  background: url('img/arr_black01.png') 50% 50% / 18px no-repeat;
  width: 18px;
  height: 20px;
  display: inline-block;
}
.comCont01 .mapArea {
  width: 100%;
  height: 420px;
  margin: -30px auto 0px;
  background: url('img/bg_map.png') 50% 0px / 455px no-repeat;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: start;
  padding: 50px 0px;
}
.comCont01 .mapArea ::-webkit-scrollbar {
  width: 3px;
}
.comCont01 .mapArea ::-webkit-scrollbar-thumb {
  background-color: rgb(187, 187, 187);
}
.comCont01 .mapArea .btnTit {
  width: 48%;
  position: inherit;
}
.comCont01 .mapArea .att {
  position: absolute;
  font-size: 1.1rem;
  top: 60px;
  left: 0px;
}
.comCont01 .mapArea .btnTit .area_block a {
  display: block;
  text-align: center;
  font-weight: 700;
  color: rgb(0, 0, 0);
  font-size: 1.8rem;
  line-height: 2rem;
  padding: 18px 30px;
  border: 3px solid rgb(0, 0, 0);
  border-radius: 10px;
}
.comCont01 .mapArea .btnTit .area_block a:hover {
  opacity: 0.7;
  cursor: pointer;
}
.comCont01 .mapArea .btnTit .area_block a.noLink {
  pointer-events: none;
}
.comCont01 .mapArea .btnTit.hokkaido .area_block a {
  background: rgba(198, 228, 177, 0.95);
}
.comCont01 .mapArea .btnTit.tohoku .area_block a {
  background: url('img/arr_white_down.png') right 10px top 50% / 18px no-repeat
    rgba(189, 233, 238, 0.95);
}
.comCont01 .mapArea .btnTit.kanto .area_block a {
  background: url('img/arr_white_down.png') right 10px top 50% / 18px no-repeat
    rgba(246, 216, 152, 0.95);
}
.comCont01 .mapArea .btnTit.tokai .area_block a {
  background: url('img/arr_white_down.png') right 10px top 50% / 18px no-repeat
    rgba(241, 244, 128, 0.95);
}
.comCont01 .mapArea .btnTit.kansai .area_block a {
  background: url('img/arr_white_down.png') right 10px top 50% / 18px no-repeat
    rgba(241, 233, 215, 0.95);
}
.comCont01 .mapArea .btnTit.chugoku .area_block a {
  background: url('img/arr_white_down.png') right 10px top 50% / 18px no-repeat
    rgba(249, 215, 231, 0.95);
}
.comCont01 .mapArea .btnTit.kyushu .area_block a {
  background: rgba(238, 220, 241, 0.95);
}
.comCont01 .mapArea .btnTit.okinawa .area_block a {
  background: rgba(238, 221, 241, 0.95);
}
.comCont01 .mapArea .modal {
  display: none;
  margin: 0px;
  position: fixed;
  z-index: 5;
}
.comCont01 .btn_l {
  width: 100%;
  margin: 0px auto;
  position: relative;
  z-index: 2;
}
.comCont01 .btn_l a {
  display: block;
  border-radius: 10px;
  border: 4px solid rgb(243, 133, 111);
  padding: 15px 25px 15px 10px;
  background: url('img/arr_black2.png') right 10px top 50% / 18px no-repeat
    rgb(255, 255, 255);
  font-size: 1.6rem;
  line-height: 2.8rem;
  text-align: center;
  letter-spacing: 0.1rem;
  position: relative;
}
.comCont01 .btn_l a::before {
  content: '';
  position: absolute;
  background: url('img/deco_btn_children.png') 50% 50% / 80px no-repeat;
  top: -65px;
  right: 15px;
  width: 80px;
  height: 100px;
}
.comCont01 .btn_l a .btnTit {
  font-size: 1.7rem;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  letter-spacing: 0rem;
  line-height: 2.2rem;
  padding: 18px 0px 0px 2px;
  box-sizing: border-box;
  top: -40px;
  left: 10px;
}
.comCont01 .modal {
  display: none;
  position: fixed;
  z-index: 8;
  left: 0px;
  top: 0px;
  height: 100%;
  width: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.5);
  animation-name: modalopen;
  animation-duration: 0.5s;
  padding: 30px 0px 0px 3px;
}
.comCont01 .modal .modal-box {
  background-color: rgb(255, 255, 255);
  border: 3px solid rgb(0, 0, 0);
  border-radius: 15px;
  margin: 0px auto;
  max-width: 460px;
  width: calc(100% - 30px);
  left: 50%;
}
.comCont01 .modal .modal-box .country_out {
  padding: 10px 20px;
}
.comCont01 .modal .modal-box .country_tit {
  font-size: 1.6rem;
  font-weight: 700;
  position: relative;
  margin: 0px 0px 15px;
}
.comCont01 .modal .modal-box .country_tit .bg {
  background: rgb(255, 255, 255);
  position: relative;
  padding: 0px 15px 0px 0px;
}
.comCont01 .modal .modal-box .country_tit .bg a {
  text-decoration: none;
  color: inherit;
}
.comCont01 .modal .modal-box .country_tit .bg a::after {
  content: '';
  display: inline-block;
  width: 16px;
  height: 16px;
  background: url('img/arr_black2.png') 0% 0% / cover no-repeat;
  margin-left: 8px;
  vertical-align: middle;
}
.comCont01 .modal .modal-box .country_tit::before {
  content: '';
  position: absolute;
  background: rgb(204, 204, 204);
  width: 100%;
  height: 2px;
  left: 0px;
  top: calc(50% - 1px);
}
#contents .comCont01 .modal .modal-box .country_list {
  margin: 0px;
  padding: 0px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
#contents .comCont01 .modal .modal-box .country_list li {
  margin-right: 8px;
  margin-bottom: 10px;
  padding: 0px;
  background: none;
  width: 31.5%;
}
#contents .comCont01 .modal .modal-box .country_list li:nth-child(3n) {
  margin-right: 0px;
}
#contents .comCont01 .modal .modal-box .country_list li a {
  text-decoration: none;
  display: block;
  text-align: center;
  font-size: 1.4rem;
  font-weight: 700;
  border: 3px solid rgb(0, 0, 0);
  border-radius: 10px;
  padding: 12px 22px 12px 10px;
  background: url('img/arr_black01.png') right 8px top 50% / 12px no-repeat
    rgb(253, 244, 223);
}
#contents .comCont01 .modal .modal-box .country_list li a:hover {
  opacity: 0.7;
}
.comCont01 .modal .modalClose {
  color: rgb(0, 0, 0);
  text-decoration: none;
  font-size: 1.6rem;
  text-align: center;
  display: block;
  font-weight: 700;
  padding: 12px 15px;
  background: url('img/icon_minus.png') right 15px top 50% / 16px no-repeat
    rgb(255, 255, 255);
  border: 3px solid rgb(0, 0, 0);
  border-radius: 50px;
  width: 60%;
  margin: 20px auto 40px;
}
.comCont01 .modal .modalClose:hover {
  opacity: 0.7;
}
.comCont01 .modal .btnTit_cl {
  border-top: none;
  border-right: none;
  border-left: none;
  border-image: initial;
  border-bottom: 2px solid rgb(0, 0, 0);
  border-radius: 10px 10px 0px 0px;
  font-size: 2rem;
  letter-spacing: 0.2rem;
  font-weight: 700;
  text-align: center;
  padding: 20px;
  margin: 0px auto 20px;
  width: 100%;
}
.comCont01 .hokkaido .modal .btnTit_cl {
  background: url('img/icon_minus2.png') right 20px top 50% / 25px no-repeat
    rgb(198, 228, 177);
}
.comCont01 .tohoku .modal .btnTit_cl {
  background: url('img/icon_minus2.png') right 20px top 50% / 25px no-repeat
    rgb(189, 233, 238);
}
.comCont01 .kanto .modal .btnTit_cl {
  background: url('img/icon_minus2.png') right 20px top 50% / 25px no-repeat
    rgb(246, 216, 152);
}
.comCont01 .tokai .modal .btnTit_cl {
  background: url('img/icon_minus2.png') right 20px top 50% / 25px no-repeat
    rgb(241, 244, 128);
}
.comCont01 .kansai .modal .btnTit_cl {
  background: url('img/icon_minus2.png') right 20px top 50% / 25px no-repeat
    rgb(241, 233, 215);
}
.comCont01 .chugoku .modal .btnTit_cl {
  background: url('img/icon_minus2.png') right 20px top 50% / 25px no-repeat
    rgb(249, 215, 231);
}
.comCont01 .kyushu .modal .btnTit_cl {
  background: url('img/icon_minus2.png') right 20px top 50% / 25px no-repeat
    rgb(238, 220, 241);
}
.comCont01 .okinawa .modal .btnTit_cl {
  background: url('img/icon_minus2.png') right 20px top 50% / 25px no-repeat
    rgb(238, 221, 241);
}
.comCont01 .modal .modalClose:hover,
.comCont01 .modal .modalClose:focus {
  text-decoration: none;
  cursor: pointer;
}
@keyframes modalopen {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes modalclose {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.comCont01 .mapArea li {
  background: url('img/arr_black01.png') 0px 12px / 12px no-repeat;
  padding: 0px 0px 0px 20px;
  margin: 0px 40px 15px 0px;
}
#contents #article {
  border: 3px solid rgb(0, 0, 0);
  width: 100%;
  margin: 80px auto;
  border-radius: 30px;
  background: rgb(255, 255, 255);
  padding: 20px 15px;
}
#contents #article .tit {
  font-size: 2.2rem;
  font-weight: 700;
  padding: 0px 0px 15px;
  letter-spacing: 0.2rem;
  border-bottom: 2px solid rgb(0, 0, 0);
}
#contents #article #detail {
  padding: 20px 0px;
}
#contents #article ul {
  margin: 0px;
  padding: 0px;
}
#contents #article ul li {
  padding: 0px;
  margin: 0px 0px 10px;
  background: none;
  position: relative;
}
#contents #article ul li a {
  padding: 0px 0px 0px 25px;
  display: block;
  line-height: 2.6rem;
  text-decoration: none;
  position: relative;
  background: url('img/arr_black01.png') 0px 50% / 15px no-repeat;
}
#contents #article ul li:last-child {
  margin: 0px;
}
#contents #article ul li a {
  text-decoration: none;
}
#contents #article ul li a:hover {
  text-decoration: underline;
}
#contents #index .comCont02,
#contents .comCont02 {
  background: url('img/arrBg.png') 50% 0px / 500px repeat-x,
    url('img/bg_rep04.gif') 0% 0% / auto;
  padding: 60px 0px 80px;
  margin: 0px auto;
}
#contents #category .comCont02,
#contents #page .comCont02 {
  margin-left: -4.4%;
  margin-right: -4.4%;
  padding-bottom: 20px;
}
#contents .comCont02 .idxh2 {
  text-align: center;
  color: rgb(0, 0, 0);
  font-size: 3.2rem;
  line-height: 4rem;
  margin-top: 0px;
  margin-bottom: 40px;
  padding: 0px;
  position: relative;
  background: none;
  letter-spacing: 0.2rem;
  border: none;
  font-weight: 700;
}
#contents .comCont02 .idxh2 .fs_s {
  font-size: 2.8rem;
}
#contents .comCont02_sec .idxh2 a {
  position: relative;
}
#contents .comCont02_sec .idxh2 a:hover {
  opacity: 0.7;
}
#contents .comCont02_sec .idxh2 a::after {
  content: '';
  position: absolute;
  top: calc(50% - 10px);
  right: -40px;
  background: url('img/arr_black01.png') 50% 50% / 18px no-repeat;
  width: 18px;
  height: 20px;
  display: inline-block;
}
.comCont02 .btn {
  position: relative;
  text-decoration: none;
  padding: 20px;
  text-align: center;
  transition: all 0.3s ease 0s;
}
.comCont02 .slider_sBox {
  background: rgb(255, 255, 255);
  border-radius: 30px;
  border: 3px solid rgb(0, 0, 0);
  margin: 0px 15px;
}
.comCont02 .slider_sBox .ph {
  position: relative;
}
.comCont02 .slider_sBox .ph::before {
  content: '';
  position: absolute;
  background: url('img/icon_search.png') 50% 50% / 56px no-repeat;
  width: 56px;
  height: 56px;
  right: -10px;
  bottom: -10px;
  z-index: 1;
}
#contents .comCont02 .slider_sBox .idxh3,
#contents .comCont02 .modal2 .modal-inner .idxh3 {
  background: none;
  text-align: center;
  padding: 0px;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 3.2rem;
  margin: 0px 0px 20px;
}
#contents .comCont02 .slider_sBox .idxh3::before,
#contents .comCont02 .modal2 .modal-inner .idxh3::before {
  display: none;
}
#contents .comCont02 .slider_sBox .ph img,
#contents .comCont02 .modal2 .modal-inner .ph img {
  border-radius: 10px;
}
#contents .comCont02 .modal2 .modal-inner .ph {
  width: 80%;
  margin: 0px auto 30px;
}
.comCont02 .btn:hover {
  opacity: 0.7;
  cursor: pointer;
}
.comCont02 .modal2 {
  position: fixed;
  display: flex;
  align-items: center;
  width: 100vw;
  height: 100vh;
  inset: 0px;
  margin: auto;
  border: none;
  opacity: 0;
  z-index: -1;
}
.comCont02 .modal2 .btn-inner {
  margin-top: 23.5px;
}
.comCont02 .modal-cover {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}
.comCont02 .modal-inner {
  width: 80vw;
  max-width: 460px;
  max-height: 90vh;
  margin: auto;
  padding: 20px;
  background: rgb(255, 255, 255);
  overflow-y: scroll;
  z-index: 1;
  border: 3px solid rgb(0, 0, 0);
  border-radius: 30px;
}
.comCont02 .modal-inner::-webkit-scrollbar {
  height: 200px;
  width: 3px;
}
.comCont02 .modal-inner::-webkit-scrollbar-thumb {
  background-color: rgb(187, 187, 187);
}
.comCont02 .modal-inner::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0);
}
.comCont02 .modal-content .botArea {
  padding: 0px 20px;
}
.comCont02 .modal-content .btn-internal {
  width: 90%;
  margin: 0px auto 20px;
}
.comCont02 .botArea .btn {
  width: 90%;
  margin: 0px auto 20px;
  background: url('img/icon_minus.png') right 20px top 50% / 18px no-repeat
    rgb(255, 255, 255);
  color: rgb(0, 0, 0);
  border: 3px solid rgb(0, 0, 0);
  border-radius: 40px;
  font-size: 1.8rem;
  font-weight: 700;
  display: block;
  text-align: center;
  padding: 18px 50px 18px 30px;
  position: relative;
  line-height: 2.4rem;
}
.comCont02 .modal2.is-open {
  animation: 0.5s ease 0s 1 normal forwards running modal_open;
}
.comCont02 .modal2.is-open .modal-inner {
  animation: 0.5s ease 0s 1 normal forwards running modal_inner_open;
}
.comCont02 .modal2.is-close {
  animation: 0.5s ease 0s 1 normal forwards running modal_close;
}
.comCont02 .modal2.is-close .modal-inner {
  animation: 0.5s ease 0s 1 normal forwards running modal_inner_close;
}
@keyframes modal_open {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    z-index: 10000;
  }
}
@keyframes modal_inner_open {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}
@keyframes modal_close {
  0% {
    z-index: 10000;
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes modal_inner_close {
  0% {
    opacity: 1;
    transform: translateY(0px);
  }
  100% {
    transform: translateY(-20px);
    opacity: 0;
  }
}
#contents .comCont03_sec {
  padding: 60px 0px 0px;
  margin: 0px auto;
  width: 92%;
}
#contents .comCont03 .sBox {
  border: 3px solid rgb(0, 0, 0);
  background: rgb(255, 255, 255);
  border-radius: 30px;
}
#contents .comCont03 .sBox .idxh3 {
  margin: 0px;
  padding: 30px 20px;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.1rem;
  line-height: 3.4rem;
  border-bottom: 3px solid rgb(0, 0, 0);
  background: rgb(247, 227, 227);
  border-radius: 28px 28px 0px 0px;
}
#contents .comCont03 .sBox .idxh3 .fs_s {
  font-size: 1.7rem;
}
#contents .comCont03 .sBox .idxh3::before {
  display: none;
}
#contents .comCont03 .sBox.add_pr .idxh3::before {
  position: inherit;
  top: inherit;
  width: inherit;
  height: inherit;
	display: inline-block;
	content: "\3010PR\3011";
  color: rgb(0, 0, 0);
  background: none;
}
#contents .comCont03 .sBox .inner {
  padding: 40px 20px;
}
#contents .comCont03 .sBox .inner .tagArea {
  margin: 0px auto 30px;
}
#contents .comCont03 .sBox .inner .tagArea ul {
  margin: 0px;
  padding: 0px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
#contents .comCont03 .sBox .inner .tagArea ul li {
  background: rgb(252, 244, 239);
  border-radius: 5px;
  padding: 8px 15px;
  margin-right: 10px;
  margin-bottom: 10px;
  font-size: 1.3rem;
  text-align: center;
  line-height: 2.4rem;
}
#contents .comCont03 .sBox .tglCont {
  margin: 40px auto 0px;
}
#contents .comCont03 .sBox .inner .sCont {
  margin: 0px auto 40px;
}
#contents .comCont03 .sBox .inner .sCont:last-child {
  margin: 0px auto;
}
#contents .comCont03 .sBox .inner .sCont .idxh4 {
  margin: 0px 0px 25px;
  padding: 0px 0px 15px;
  font-size: 2rem;
  font-weight: 700;
  border-bottom: 4px solid rgb(204, 204, 204);
  position: relative;
}
#contents .comCont03 .sBox .inner .sCont .idxh4::before {
  content: '';
  position: absolute;
  background: rgb(73, 151, 81);
  width: 50px;
  height: 4px;
  bottom: -4px;
  left: 0px;
}
#contents .comCont03 .sBox .inner .sCont .catch {
  font-size: 1.8rem;
  color: rgb(73, 151, 81);
  font-weight: 700;
  margin: 0px 0px 10px;
}
#contents .priceList {
  margin: 0px;
  padding: 0px;
}
#contents .priceList li {
  letter-spacing: 0.1rem;
  background: url('./img/listicon.png') 2px 12px / auto 14px no-repeat;
  padding: 0px 0px 0px 25px;
}
#contents .priceList li .fs_l {
  font-size: 2rem;
  font-weight: 700;
}
#contents .priceList li .fc_red .fs_l {
  font-size: 2.6rem;
  color: rgb(226, 82, 82);
}
#contents .comCont03 .sBox .inner .sCont .sCont_det #com_tglBox {
  margin: 0px auto 40px;
}
#contents .comCont03 .sBox .inner .sCont .sCont_det #com_tglBox .more__content {
  position: relative;
  height: auto;
  max-height: 200px;
  overflow: hidden;
  transition: max-height 0.3s ease 0s;
}
#contents
  .comCont03
  .sBox
  .inner
  .sCont
  .sCont_det
  #com_tglBox
  .more__content::after {
  content: '';
  position: absolute;
  top: 0px;
  left: 0px;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  transition: all 0.3s ease 0s;
  background: linear-gradient(transparent 0%, rgb(255, 255, 255) 100%);
}
#contents
  .comCont03
  .sBox
  .inner
  .sCont
  .sCont_det
  #com_tglBox
  .more__content.open::after {
  z-index: -1;
  opacity: 0;
}
#contents .comCont03 .sBox .inner .sCont .sCont_det #com_tglBox .more__btn {
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
  display: block;
  color: rgb(0, 0, 0);
  width: 300px;
  margin: 0px auto;
  background: url('img/icon_plus.png') right 15px top 50% / 16px no-repeat
    rgb(255, 255, 255);
  padding: 15px 30px 15px 15px;
  border-radius: 40px;
  cursor: pointer;
  border: 3px solid rgb(0, 0, 0);
  letter-spacing: 0.2rem;
}
#contents
  .comCont03
  .sBox
  .inner
  .sCont
  .sCont_det
  #com_tglBox
  .more__btn:hover {
  opacity: 0.8;
}
#contents
  .comCont03
  .sBox
  .inner
  .sCont
  .sCont_det
  #com_tglBox
  .more__btn.open-btn {
  background: url('img/icon_minus.png') right 15px top 50% / 16px no-repeat
    rgb(255, 255, 255);
  image-rendering: -webkit-optimize-contrast;
}
#contents .comCont03 .sBox .inner .sCont .sCont_det .huki {
  background: rgb(252, 244, 239);
  border-radius: 70px;
  margin-bottom: 40px;
  padding: 40px 30px;
  width: 93%;
  float: right;
  position: relative;
}
#contents .comCont03 .sBox .inner .sCont .sCont_det .huki::before {
  content: '';
  position: absolute;
  top: 100px;
  left: -10px;
  width: 30px;
  height: 30px;
  background: rgb(252, 244, 239);
  transform: skewX(-40deg);
  border-top: none;
  border-radius: 0px 0px 3px 8px;
}
#contents .comCont03 .sBox .inner .sCont .sCont_det .huki:nth-child(2n) {
  float: left;
}
#contents
  .comCont03
  .sBox
  .inner
  .sCont
  .sCont_det
  .huki:nth-child(2n)::before {
  left: inherit;
  right: -10px;
  width: 30px;
  height: 30px;
  background: rgb(252, 244, 239);
  transform: skewX(40deg);
  border-top: none;
  border-radius: 0px 0px 8px 3px;
}
#contents .comCont03 .sBox .inner .sCont .sCont_det .huki .caption {
  text-align: left;
}
#contents .comCont03 .sBox .inner .sCont .linkArea .btn-web {
  width: 90%;
  margin: 0px auto;
}
#contents .comCont03 .sBox .inner .sCont .sCont_det table th,
#contents .comCont03 .sBox .inner .sCont .sCont_det table td {
  display: block;
  width: 100%;
}
#contents .comCont03 .sBox .inner .sCont .sCont_det table th {
  text-align: left;
  border-top: none;
  border-bottom: none;
}
#contents .comCont03 .sBox .inner .sCont .sCont_det table {
  border-top: 2px solid rgb(204, 204, 204);
  margin: 0px auto;
}
#contents .comCont04_sec {
  padding: 80px 0px 0px 4%;
  margin: 40px auto;
}
#contents .comCont04_sec .contBox {
  border: 3px solid rgb(0, 0, 0);
  background: rgb(255, 255, 255);
  border-radius: 30px;
  padding: 0px 20px 30px;
}
#contents .comCont04_sec .contBox .mTit {
  background: rgb(218, 236, 220);
  font-size: 2rem;
  font-weight: 700;
  line-height: 3.4rem;
  padding: 15px 20px;
  border-radius: 30px;
  margin: -50px 0px 40px -40px;
  width: calc(100% + 46px);
}
#contents .comCont04_sec .contBox .ph {
  width: 50%;
  margin: 0px auto 20px;
  border-radius: 50%;
  mask-image: -webkit-radial-gradient(center, circle cover, white, black);
}
#contents .comCont04_sec .contBox .sponsored {
  text-align: center;
  font-size: 1.4rem;
  margin: 0px 0px 10px;
}
#contents .comCont04_sec .contBox .catch {
  font-size: 2.4rem;
  font-weight: 700;
  color: rgb(73, 150, 80);
  text-align: center;
}
@media screen and (max-width: 599px) {
  body {
    line-height: 2em;
    min-width: inherit;
    width: 100%;
    padding: 0px 0px 87px;
    background: rgb(247, 247, 247);
  }
  #contents {
    /* overflow: hidden; */
    overflow: visible;
  }
  .pc_br {
    display: none;
  }
  .sp_br {
    display: block;
  }
  .pc {
    display: none !important;
  }
  .sp {
    display: block;
  }
  img {
    max-width: 100%;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
  }
  p span,
  .marker {
    font-size: 1.4rem;
  }
  p {
    font-size: 1.4rem;
    margin: 0px 0px 10px;
  }
  a {
    color: rgb(0, 0, 0);
    text-decoration: none;
    -webkit-tap-highlight-color: transparent;
  }
  #category,
  #page {
    position: relative;
    float: none;
    width: 100%;
    box-sizing: border-box;
  }
  header .inner {
    padding: 10px 15px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
  }
  header .logo {
    width: 65px;
  }
  header .sitename {
    padding: 0px 50px 0px 0px;
    text-align: left;
  }
  .key_sec .inner {
    padding: 10px 0px;
  }
  .center_cont_wrap {
    position: absolute;
    top: 0px;
    min-height: 100vh;
    left: 0px;
    max-width: 100%;
    overflow: hidden;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 30px;
    background: url('img/bg_rep01.gif');
  }
  .center_cont {
    width: 100%;
  }
  .temp_inner {
    padding: 0px;
    box-sizing: border-box;
  }
  #index h2,
  #category h1,
  #page h1 {
    margin: 60px auto 20px;
    font-size: 2.2rem;
    line-height: 3rem;
    padding: 20px;
  }
  #category h1::before,
  #page h1::before {
    content: '';
    background: url('img/deco_sech2.png') 50% 50% / 150px no-repeat;
    width: 150px;
    height: 100px;
    position: absolute;
    top: -70px;
    left: calc(50% - 75px);
  }
  #index h2 a::after,
  #category h1 a::after,
  #page h1 a::after {
    content: '';
    background: url('img/arr_black01.png') 0% 0% / 10px no-repeat;
    width: 6px;
    height: 9px;
    position: absolute;
    right: 0px;
    top: calc(50% - 5px);
  }
  #index h3,
  #category h2,
  #page h2 {
    margin: 35px 0px 20px;
    padding: 12px 10px 12px 20px;
    font-size: 2rem;
    line-height: 2.8rem;
    border-radius: 20px;
  }
  #index h3::before,
  #category h2::before,
  #page h2::before {
    content: '';
    background: rgb(73, 151, 81);
    position: absolute;
    top: 0px;
    left: 0px;
    width: 5px;
    height: 100%;
  }
  #index h3 a,
  #category h2 a,
  #page h2 a {
    text-align: left;
    display: block;
    background: url('img/arr_black01.png') right 0px top 50% / 12px no-repeat;
    padding: 0px 20px 0px 0px;
  }
  #index h4,
  #category h3,
  #page h3 {
    position: relative;
    margin: 35px 0px 20px;
    padding: 10px 10px 15px 0px;
    font-size: 1.8rem;
    line-height: 2.4rem;
    border-bottom: 3px solid rgb(204, 204, 204);
  }
  #index h4::before,
  #category h3::before,
  #page h3::before {
    content: '';
    background: rgb(73, 150, 80);
    display: inline-block;
    width: 50px;
    height: 3px;
    position: absolute;
    bottom: -3px;
    left: 0px;
  }
  #index h4 a,
  #category h3 a,
  #page h3 a {
    display: block;
    background: url('img/arr_black01.png') right 0px top 50% / 12px no-repeat;
    padding: 0px 20px 0px 0px;
  }
  #index h5,
  #category h6,
  #category h4,
  #category h5,
  #category h6,
  #page h4,
  #page h5,
  #page h6 {
    position: relative;
    margin: 35px 0px 20px;
    padding: 0px 10px 10px 0px;
    font-size: 1.6rem;
    line-height: 2.4rem;
  }
  #index h5 a,
  #category h6 a,
  #category h4 a,
  #category h5 a,
  #category h6 a,
  #page h4 a,
  #page h5 a,
  #page h6 a {
    position: relative;
    background: url('img/arr_black01.png') right 0px top 50% / 12px no-repeat;
    display: block;
    font-size: 1.6rem;
    padding: 0px 20px 0px 0px;
  }
  .sitemap h2 a {
    color: rgb(0, 0, 0);
  }
  #contents ul {
    margin: 20px 0px;
    padding: 10px 10px 0px;
  }
  #contents .priceList {
    margin: 0px;
    padding: 0px 10px;
  }
  #contents ul li {
    min-height: 12px;
    padding: 0px 0px 4px 22px;
    background: url('./img/listicon.png') 2px 8px / auto 14px no-repeat;
    image-rendering: -webkit-optimize-contrast;
    font-size: 1.4rem;
  }
  #contents table {
    width: 100%;
    table-layout: fixed;
    margin: 30px auto;
  }
  #contents table {
    border-collapse: collapse;
    width: 100%;
    border: none;
  }
  #contents table th {
    background: rgb(255, 250, 247);
    text-align: center;
    font-size: 1.5rem;
  }
  #contents table td {
    background: rgb(255, 255, 255);
    font-size: 1.4rem;
  }
  #contents table th,
  #contents table td {
    border: 2px solid rgb(204, 204, 204);
    padding: 10px;
    box-sizing: border-box;
  }
  #contents .float-wrap {
    margin: 20px auto;
    padding: 0px;
    width: 100%;
  }
  #contents .float-wrap .float-img {
    margin: 0px 0px 12px;
  }
  #contents .float-wrap .fl {
    width: 100%;
    padding: 0px 0px 10px;
    text-align: left;
  }
  #contents .float-wrap .fr {
    width: 100%;
    padding: 0px 0px 10px;
    text-align: left;
  }
  #contents .float-wrap .center {
    width: 100%;
    padding: 0px 0px 10px;
    text-align: left;
  }
  #contents .float-wrap img {
    width: 100%;
  }
  #contents .float-wrap p {
    line-height: 2.6rem;
    margin: 0px auto;
    width: 100%;
  }
  #contents .float-wrap .catch {
    font-size: 1.6rem;
    margin: 0px 0px 10px;
    line-height: 1.5;
    padding: 0px;
  }
  #contents .float-wrap .fl.t_small {
    width: 100%;
    padding: 0px;
    text-align: center;
    float: none;
  }
  #contents .float-wrap .fr.t_small {
    width: 100%;
    padding: 0px 0px 0px 20px;
    margin: 0px;
    text-align: center;
    float: none;
  }
  #contents .float-wrap table {
    width: 100%;
    margin: 2rem 0px;
    display: table;
  }
  #contents .float-wrap table th {
    width: 100%;
    display: block;
    font-size: 1.6rem;
    border-bottom: none;
  }
  #contents .float-wrap table tr:nth-child(2) th {
    border-top: none;
  }
  #contents .float-wrap table td {
    text-align: left;
    display: block;
    font-size: 1.4rem;
  }
  #contents .caption {
    margin: 5px 0px 20px;
    font-size: 1rem;
    line-height: 1.3;
    word-break: break-all;
    color: rgb(153, 153, 153);
    text-align: center;
  }
  .btn-link {
    margin: 20px 0px;
    text-align: center;
  }
  .btn-link a {
    background: url('img/arr_black2.png') right 15px top 50% / 18px no-repeat;
    border-radius: 0px;
    color: rgb(0, 0, 0);
    font-size: 1.5rem;
    font-weight: 700;
    display: inline-block;
    text-align: center;
    padding: 0px 35px 0px 10px;
    position: relative;
    text-decoration: none;
    line-height: 2.4rem;
  }
  .btn-link a:hover {
    text-decoration: none;
  }
  .btn-internal,
  .btn-web,
  .btn-tel,
  .btn-link2,
  .btn-link {
    width: 90%;
    margin: 20px auto;
  }
  .btn-internal a {
    background: url('img/arr_orange.png') right 15px top 50% / 18px no-repeat
      rgb(255, 255, 255);
    color: rgb(229, 136, 73);
    border: 2px solid rgb(229, 136, 73);
    font-size: 1.5rem;
    display: block;
    text-align: center;
    padding: 16px 35px 16px 20px;
    position: relative;
  }
  .btn-web a {
    background: url('img/icon_web.png') left 15px top 50% / 18px no-repeat
      rgb(235, 138, 79);
    color: rgb(255, 255, 255);
    font-size: 1.5rem;
    display: block;
    text-align: center;
    padding: 16px 25px 16px 45px;
    position: relative;
    line-height: 2.4rem;
  }
  .btn-tel {
    display: block;
  }
  .btn-tel a {
    background: url('img/icon_tell.png') left 20px top 50% / 16px no-repeat
      rgb(123, 172, 128);
    color: rgb(255, 255, 255);
    font-size: 1.5rem;
    font-weight: 700;
    display: block;
    text-decoration: none;
    text-align: center;
    padding: 16px 25px 16px 45px;
    position: relative;
    line-height: 2.4rem;
    border-radius: 30px;
  }
  .btn-link2 a {
    background: url('img/arr_white.png') right 15px top 50% / 18px no-repeat
      rgb(153, 153, 153);
    color: rgb(255, 255, 255);
    font-size: 1.5rem;
    padding: 16px 35px 16px 20px;
    position: relative;
    line-height: 2.4rem;
    text-decoration: none;
  }
  #contents #pageList {
    width: 100%;
    margin: 50px auto;
    display: block;
    border: 2px solid rgb(0, 0, 0);
    border-radius: 20px;
    padding: 0px 15px;
    background: rgb(255, 255, 255);
  }
  #contents #pageList .decoTit {
    display: block;
    padding: 0px;
    background: url('img/icon_plus.png') right 0px top 50% / 14px no-repeat;
  }
  #contents #pageList .decoTit.open {
    background: url('img/icon_minus.png') right 0px top 50% / 14px no-repeat;
  }
  #contents #pageList .decoTit .sTit {
    width: 100%;
    padding: 15px 0px;
    writing-mode: inherit;
    font-size: 1.6rem;
    font-weight: 700;
    position: relative;
    margin: 0px;
  }
  #contents #pageList #toc2 {
    border-top: 2px solid rgb(0, 0, 0);
    display: none;
    width: 100%;
    padding: 20px 0px;
  }
  #contents #index #pageList #toc2 .chapter .chapter {
  }
  #contents #pageList ul {
    margin: 0px;
    padding: 0px;
  }
  #contents #pageList ul li {
    background: none;
    line-height: 2.6rem;
  }
  #contents #pageList #toc2 > ul > li {
    counter-increment: count 1;
    padding: 0px 0px 0px 25px;
  }
  #contents #pageList ul ul {
    margin: 0px;
    padding: 0px 0px 0px 25px;
  }
  #contents #pageList .chapter .chapter li {
    background: url('img/arr_sub.png') left 0px top 15% / 6px no-repeat;
    padding: 0px 0px 0px 15px;
    font-size: 1.5rem;
    line-height: 2.4rem;
  }
  #contents #index #pageList ul li::before,
  #contents #pageList .chapter .chapter li::before {
    display: none;
  }
  #contents #pageList ul li a {
    text-decoration: none;
    padding: 0px 15px 0px 25px;
    display: block;
    line-height: 3rem;
    position: relative;
  }
  #contents #pageList ul li a:hover {
    text-decoration: underline;
  }
  .comCont01_sec {
    padding: 30px 0px;
  }
  .comCont01 .titArea .idxh2 {
    text-align: center;
    color: rgb(0, 0, 0);
    font-size: 2.5rem;
    line-height: 4rem;
    margin-top: 0px;
    margin-bottom: 20px;
    padding: 0px;
    position: relative;
    background: none;
    letter-spacing: 0.2rem;
    border: none;
  }
  .comCont01 .titArea .idxh2 .fs_s {
    font-size: 2.2rem;
  }
  .comCont01 .titArea .idxh2 a::after {
    right: 0px;
    background: url('img/arr_black01.png') 50% 50% / 14px no-repeat;
    width: 14px;
    height: 20px;
    display: inline-block;
  }
  .comCont01 .mapArea {
    height: 380px;
    margin: -30px auto 0px;
    background: url('img/bg_map.png') 50% 0px / 100% no-repeat;
    padding: 40px 0px;
  }
  .comCont01 .mapArea .btnTit .area_block a {
    font-size: 1.6rem;
    line-height: 2rem;
    padding: 18px 15px;
    border: 2px solid rgb(0, 0, 0);
    border-radius: 10px;
  }
  .comCont01 .modal .modal-box {
    border: 2px solid rgb(0, 0, 0);
    border-radius: 15px;
    max-width: 100%;
    width: calc(100% - 30px);
  }
  .comCont01 .modal .modalClose {
    font-size: 1.6rem;
    padding: 12px 15px;
    background: url('img/icon_minus.png') right 15px top 50% / 15px no-repeat
      rgb(255, 255, 255);
    border: 2px solid rgb(0, 0, 0);
    border-radius: 50px;
    width: 70%;
    margin: 15px auto 30px;
  }
  .comCont01 .modal .btnTit_cl {
    border-top: none;
    border-right: none;
    border-left: none;
    border-image: initial;
    border-bottom: 2px solid rgb(0, 0, 0);
    border-radius: 12px 12px 0px 0px;
    font-size: 1.8rem;
    letter-spacing: 0.2rem;
    padding: 15px 30px 15px 20px;
    margin: 0px auto 15px;
    width: 100%;
  }
  .comCont01 .hokkaido .modal .btnTit_cl {
    background: url('img/icon_minus2.png') right 15px top 50% / 20px no-repeat
      rgb(198, 228, 177);
  }
  .comCont01 .tohoku .modal .btnTit_cl {
    background: url('img/icon_minus2.png') right 15px top 50% / 20px no-repeat
      rgb(189, 233, 238);
  }
  .comCont01 .kanto .modal .btnTit_cl {
    background: url('img/icon_minus2.png') right 15px top 50% / 20px no-repeat
      rgb(246, 216, 152);
  }
  .comCont01 .tokai .modal .btnTit_cl {
    background: url('img/icon_minus2.png') right 15px top 50% / 20px no-repeat
      rgb(241, 244, 128);
  }
  .comCont01 .kansai .modal .btnTit_cl {
    background: url('img/icon_minus2.png') right 15px top 50% / 20px no-repeat
      rgb(241, 233, 215);
  }
  .comCont01 .chugoku .modal .btnTit_cl {
    background: url('img/icon_minus2.png') right 15px top 50% / 20px no-repeat
      rgb(249, 215, 231);
  }
  .comCont01 .kyushu .modal .btnTit_cl {
    background: url('img/icon_minus2.png') right 15px top 50% / 20px no-repeat
      rgb(238, 220, 241);
  }
  .comCont01 .okinawa .modal .btnTit_cl {
    background: url('img/icon_minus2.png') right 15px top 50% / 25px no-repeat
      rgb(238, 221, 241);
  }
  .comCont01 .modal .modal-box .country_out {
    padding: 10px 15px;
  }
  .comCont01 .modal .modal-box .country_tit {
    margin: 0px 0px 10px;
  }
  #contents .comCont01 .modal .modal-box .country_list li a {
    font-size: 1.4rem;
    border: 2px solid rgb(0, 0, 0);
    border-radius: 10px;
    padding: 12px 22px 12px 10px;
    background: url('img/arr_black01.png') right 8px top 50% / 12px no-repeat
      rgb(253, 244, 223);
  }
  #contents .comCont02_sec {
    padding: 30px 0px;
  }
  #contents .comCont02 .titArea .idxh2 {
    text-align: center;
    color: rgb(0, 0, 0);
    font-size: 2.5rem;
    line-height: 3rem;
    margin-top: 0px;
    margin-bottom: 20px;
    padding: 0px;
    position: relative;
    background: none;
    letter-spacing: 0.2rem;
    border: none;
  }
  #contents .comCont02 .titArea .idxh2 .fs_s {
    font-size: 2.2rem;
  }
  #contents .comCont02 .titArea .idxh2 a::after {
    right: -30px;
    background: url('img/arr_black01.png') 50% 50% / 14px no-repeat;
    width: 14px;
    height: 20px;
    display: inline-block;
  }
  #contents #index .comCont02,
  #contents .comCont02 {
    background: url('img/arrBg.png') 50% 0px / 400px repeat-x,
      url('img/bg_rep04.gif') 0% 0% / auto;
    padding: 40px 0px 60px;
    margin: 0px auto;
  }
  .comCont02 .slider_sBox {
    border-radius: 20px;
    border: 2px solid rgb(0, 0, 0);
    margin: 0px 10px;
  }
  #contents .comCont02 .slider_sBox .idxh3,
  #contents .comCont02 .modal2 .modal-inner .idxh3 {
    background: none;
    text-align: center;
    padding: 0px;
    font-size: 2rem;
    line-height: 3rem;
    margin: 0px 0px 10px;
  }
  .comCont02 .btn {
    padding: 10px 15px 15px;
  }
  .comCont02 .modal-inner {
    width: 90vw;
    max-width: 460px;
    max-height: 90vh;
    margin: auto;
    padding: 20px 15px;
    overflow-y: auto;
    z-index: 8;
    border: 2px solid rgb(0, 0, 0);
    border-radius: 20px;
  }
  .comCont02 .modal-content .btn-internal {
    width: 90%;
    margin: 20px auto;
  }
  .comCont02 .botArea .btn {
    margin: 0px auto 20px;
    background: url('img/icon_minus.png') right 15px top 50% / 15px no-repeat
      rgb(255, 255, 255);
    color: rgb(0, 0, 0);
    border: 2px solid rgb(0, 0, 0);
    border-radius: 40px;
    font-size: 1.5rem;
    padding: 15px 30px 15px 20px;
    position: relative;
    line-height: 2.4rem;
  }
  #contents #index .comCont02 .moreBtn,
  #contents .comCont02 .moreBtn {
    width: 80%;
  }
  #contents .comCont02 .modal2 .modal-inner .ph img {
    display: none;
  }
  #contents .comCont03_sec {
    padding: 40px 0px 0px;
    margin: 0px auto;
  }
  #contents .comCont03 .sBox {
    border: 2px solid rgb(0, 0, 0);
    border-radius: 20px;
  }
  #contents .comCont03 .sBox .idxh3 {
    margin: 0px;
    padding: 20px 15px;
    font-size: 1.8rem;
    line-height: 3rem;
    border-bottom: 2px solid rgb(0, 0, 0);
    border-radius: 18px 18px 0px 0px;
  }
  #contents .comCont03 .sBox .idxh3 .fs_s {
    font-size: 1.4rem;
  }
  #contents .comCont03 .sBox .inner {
    padding: 30px 15px;
  }
  #contents .comCont03 .sBox .inner .tagArea {
    margin: 0px auto 20px;
  }
  #contents .comCont03 .sBox .inner .sCont .idxh4 {
    margin: 0px 0px 20px;
    padding: 0px 0px 15px;
    font-size: 1.8rem;
  }
  #contents .comCont03 .sBox .inner .sCont .catch {
    font-size: 1.6rem;
    margin: 0px 0px 10px;
  }
  #contents .comCont03 .sBox .inner .sCont .linkArea .btn-link {
    text-align: right;
    margin: 30px 0px 0px;
    width: 100%;
  }
  #contents .comCont03 .sBox .inner .sCont .linkArea .btn-link a {
    text-align: right;
    border: none;
    padding: 0px 25px 0px 0px;
    background: url('img/arr_black2.png') right 0px top 50% / 15px no-repeat
      rgb(255, 255, 255);
  }
  #contents .comCont03 .sBox .inner .sCont .sCont_det #com_tglBox .more__btn {
    font-size: 1.4rem;
    width: 90%;
    background: url('img/icon_plus.png') right 15px top 50% / 14px no-repeat
      rgb(255, 255, 255);
    padding: 15px 30px 15px 15px;
    border-radius: 40px;
    border: 2px solid rgb(0, 0, 0);
  }
  #contents
    .comCont03
    .sBox
    .inner
    .sCont
    .sCont_det
    #com_tglBox
    .more__btn:hover {
    opacity: 0.8;
  }
  #contents
    .comCont03
    .sBox
    .inner
    .sCont
    .sCont_det
    #com_tglBox
    .more__btn.open-btn {
    background: url('img/icon_minus.png') right 15px top 50% / 14px no-repeat
      rgb(255, 255, 255);
  }
  #contents .comCont04_sec .contBox .mTit {
    font-size: 1.8rem;
    line-height: 3rem;
    padding: 15px;
    border-radius: 20px;
    margin: -50px 0px 30px -30px;
    width: calc(100% + 34px);
  }
  #contents .comCont04_sec .contBox {
    border: 2px solid rgb(0, 0, 0);
    border-radius: 20px;
    padding: 0px 15px 20px;
  }
  #contents .comCont04_sec .contBox .catch {
    font-size: 2rem;
  }
  #contents #article {
    width: 100%;
    margin: 50px auto;
    padding: 0px 15px;
    border: 2px solid rgb(0, 0, 0);
  }
  #contents #article .tit {
    width: 100%;
    writing-mode: inherit;
    padding: 15px 0px;
    font-size: 1.6rem;
  }
  #contents #article #detail {
    width: 100%;
  }
  #contents #article ul {
    margin: 0px;
    padding: 0px;
  }
  #contents #article ul li {
    position: relative;
    margin: 0px 0px 15px;
    padding: 0px;
    background: none;
    line-height: 2.4rem;
  }
  #contents #article ul li:last-child {
    margin: 0px;
  }
  #contents #article ul li a {
    text-decoration: none;
  }
  #contents #article ul li a:hover {
    text-decoration: underline;
  }
  #contents .sitemap {
    padding: 0px 10px;
    box-sizing: border-box;
  }
  #contents .sitemap h1 {
    width: 100%;
  }
  header {
  }
  #contents .sitename {
    font-size: 1.4rem;
    color: rgb(255, 255, 255);
    margin: 0px 0px 10px;
    position: relative;
    z-index: 2;
    padding: 0px 40px 0px 0px;
  }
  nav {
    width: 300px;
    right: 0px;
    transform: translate(300px);
    transition: all 0.5s ease 0s;
    position: fixed;
  }
  nav.open {
    transform: translateZ(0px);
  }
  .bargBg {
    background: rgb(255, 255, 255);
    position: fixed;
    top: 10px;
    right: 10px;
    z-index: 999;
    transform: translateX(0px);
    transition: transform 0.5s ease 0s;
    width: 46px;
    height: 46px;
  }
  .bargOut .bargBg.active {
    transform: translateX(-300px);
  }
  .bargBg span {
    display: inline-block;
    box-sizing: border-box;
    position: absolute;
    left: calc(50% - 10px);
    width: 20px;
    height: 2px;
    background-color: rgb(229, 136, 73);
  }
  .bargBg.active span {
    background-color: rgb(229, 136, 73);
  }
  .bargBg span:nth-of-type(1) {
    top: 13px;
  }
  .bargBg.active span:nth-of-type(1) {
    transform: translateY(9px) rotate(-45deg);
  }
  .bargBg span:nth-of-type(2) {
    top: 22px;
  }
  .bargBg.active span:nth-of-type(2) {
    opacity: 0;
  }
  .bargBg span:nth-of-type(3) {
    top: 31px;
  }
  .bargBg.active span:nth-of-type(3) {
    transform: translateY(-9px) rotate(45deg);
  }
  .out-frame {
    position: relative;
    width: 100%;
  }
  .out-frame.black::after {
    background: rgb(255, 255, 255);
    opacity: 0.8;
    content: '';
    height: 10000px;
    right: 0px;
    top: 0px;
    padding: 0px;
    position: fixed;
    width: 100%;
    z-index: 1;
    transition: all 0.5s ease 0s;
  }
  .out-frame::after {
    background: rgb(255, 255, 255);
    opacity: 0;
    content: '';
    right: 0px;
    top: 0px;
    position: fixed;
    width: 100%;
    z-index: 1;
    transition: all 0.5s ease 0s;
  }
  .header-frame {
    position: relative;
    width: 100%;
    height: 64px;
  }
  .menu-btn {
    position: absolute;
    top: 10px;
    right: 10px;
    height: 44px;
    width: 44px;
    z-index: 10;
  }
  .navOpenOut {
    background: rgba(255, 255, 255, 0.5);
    padding: 13px 10px;
    box-sizing: border-box;
  }
  .navOpen {
    position: inherit;
    top: inherit;
    right: 10px;
    height: 44px;
    width: 44px;
    z-index: 10;
    float: right;
  }
  #g-nav .accordion:first-child {
    margin-top: 46px;
  }
  #g-nav .accordion li:first-child {
  }
  .header-menu ul li a {
    display: block;
    padding: 15px 30px 15px 10px;
    text-decoration: none;
    line-height: 1.3;
    color: rgb(0, 0, 0);
    font-size: 1.3rem;
  }
  .header-menu ul.accordion li ul li:first-child a {
    padding: 12px 30px 12px 10px;
  }
  .header-menu ul li.delete {
    padding: 10px;
    text-align: center;
    color: rgb(255, 255, 255);
    font-size: 1.3rem;
  }
  .header-menu ul.accordion ul {
    display: none;
  }
  .header-menu ul.accordion .subCat ul.subList {
    display: block;
  }
  .header-menu ul.accordion .tglMenu {
    display: block;
    padding: 15px 30px 15px 10px;
    text-decoration: none;
    line-height: 1.3;
    color: rgb(0, 0, 0);
    font-size: 1.3rem;
  }
  .header-menu ul.accordion .open {
  }
  .header-menu ul.accordion ul li a {
    padding: 12px 30px 12px 20px;
    color: rgb(0, 0, 0);
  }
  .header-menu ul.accordion ul li.subCat a,
  .header-menu ul.accordion ul li.subCat ul.subList li a {
    padding: 12px 30px 12px 20px;
  }
  #pankuzuWrap {
    width: 100%;
    overflow: auto;
    white-space: nowrap;
    margin: 0px;
    padding: 0px 15px;
  }
  #pankuzu {
    box-sizing: border-box;
    width: 100%;
    padding: 6px 0px 8px;
    font-size: 1.1rem;
    color: rgb(0, 0, 0);
  }
  #pankuzu a {
    color: rgb(0, 0, 0);
  }
  footer {
    box-sizing: border-box;
    width: 100%;
    padding: 30px 0px 0px;
    margin: 80px 0px;
    position: relative;
    z-index: 3;
  }
  footer .foot_logo {
    width: 150px;
    margin: 30px auto 20px;
  }
  footer .areaInner .footBox .accChild li a {
    background: url('img/arr_black01.png') right 18px center / 12px no-repeat;
  }
  #botFix {
    position: fixed;
    bottom: 0px;
    left: 0px;
    z-index: 99;
    width: 100%;
  }
  #botFix a:hover {
    opacity: 0.7;
    text-decoration: none;
  }
  #botFix a {
    display: block;
    padding: 15px;
    background: rgb(235, 138, 79);
    position: relative;
  }
  #botFix a::before {
    content: '';
    background: url('img/deco_footBtn.png') 50% 50% / 64px no-repeat;
    width: 64px;
    height: 100px;
    position: absolute;
    left: 15px;
    bottom: 0px;
  }
  #botFix a::after {
    content: '';
    background: url('img/arr_readmore_green.png') 50% 50% / 110px no-repeat;
    width: 110px;
    height: 50px;
    position: absolute;
    right: 0px;
    bottom: -5px;
  }
  #botFix a p {
    margin: 0px;
    color: rgb(255, 255, 255);
    text-align: center;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 2.6rem;
    letter-spacing: 0.1rem;
  }
  #page-top {
    display: block;
    width: 126px;
    margin: 0px auto 30px;
  }
}
