.main {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  padding: 6rem;
  min-height: 100vh;
}
.wrapper{
  display: block;
}

.button {
  font-size: 1.3rem;
  border: none;
  cursor: pointer;
  outline: none;
  appearance: none;
  display: inline-block;
  text-align: center;
  text-decoration: none;
  color: #fff;
  padding: 5px 2rem;
  line-height: 40px;
  background:var(--main-color);
  border-radius: 40px;
  -webkit-border-radius: 40px;
  -moz-border-radius: 40px;
  -webkit-appearance: none;
  box-shadow: 0px 2px 10px rgba(100, 100, 100, 0.2);
  margin: 0.5rem 0.5rem;
}
@media screen and (max-width:768px) {
  .button {
    width: 90%;
  }
}
.button_small {
  font-size: 1rem;
  padding: 2px 1rem;
  line-height: 35px;
  height: 40px;
  border-radius: 30px;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
}

.button_gray {
  background:darkgray;
}

.button_group {
  width: 100%;
  text-align: center;
  margin:2em auto;
}

.container_l{
  width:1200px;
  margin:0 auto;
}
.container_m{
  width:1000px;
  margin:0 auto;
}
.container_s{
  width:700px;
  margin:0 auto;
}

/* Mobile */
@media (max-width: 768px) {
  .container_l,.container_m,.container_s{
    width:100%;
    padding: 0 20px;
  }
}

.description {
  display: inherit;
  justify-content: inherit;
  align-items: inherit;
  font-size: 0.85rem;
  max-width: var(--max-width);
  width: 100%;
  z-index: 2;
}

.description a {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
}

.description p {
  position: relative;
  margin: 0;
  padding: 1rem;
  background-color: rgba(var(--callout-rgb), 0.5);
  border: 1px solid rgba(var(--callout-border-rgb), 0.3);
  border-radius: var(--border-radius);
}

.code {
  font-weight: 700;
}

.grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(25%, auto));
  max-width: 100%;
  width: var(--max-width);
}


.center {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: 4rem 0;
}

.center::before {
  background: var(--secondary-glow);
  border-radius: 50%;
  width: 480px;
  height: 360px;
  margin-left: -400px;
}

.center::after {
  background: var(--primary-glow);
  width: 240px;
  height: 180px;
  z-index: -1;
}

.center::before,
.center::after {
  content: '';
  left: 50%;
  position: absolute;
  filter: blur(45px);
  transform: translateZ(0);
}

.logo {
  position: relative;
}

.page_top{
  position: relative;
}

.page_top img{
  object-fit: cover;
  width:100%;
  height:800px;
}
.common_page_top{
  position: relative;
  height:500px;
}
.common_page_top img{
  object-fit: cover;
  width:100%;
  height:500px;
}
.page_top_inner{
  position: absolute;
  top:0;
  width: 100%;
  height:120%;
}


.page_midashi{
  position: absolute;
  bottom:0;
  width:100%;
  z-index:99;
  justify-content: center;
  align-items: center;
  padding: 20px 0;
  background-color: rgba(0,0,0,0.7);
}
.page_midashi_inner{
  font-size: 1.5rem;
  text-align: center;
  font-weight: 500;
  color:#fff;
}
.page_midashi_inner img{
  width:50px;
  padding-right: 10px;
  vertical-align: middle;
}


.breadcrumb{
padding-top:10px;
}
.breadcrumb ul{
  display: flex;

}

.breadcrumb ul li{
  padding: 0 5px;

}
.breadcrumb ul li a{
color:#C30D23;
}

/*
.page_midashi_inner:before{
  width: calc(100% - 20px);
  height: 0;
  display: block;
  position: absolute;
  left: 0;
  content: "";
}
.page_midashi_inner:before{
  border-bottom: solid 20px rgba(234,101,45,0.8);
  border-right: solid 20px transparent;
  bottom: 100%;
}

 */

.harassment_top_blue_title span{
  display: block;
  font-size: 1rem;
}

.harassment_top_title{
  margin-top: 200px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  text-shadow: 1px 1px 4px #fff;
  font-weight: 600;

}
.harassment_top_message{
  background-color: rgba(255,255,255,0.8);
  padding: 20px 0;
}
.harassment_top_blue_wrapper {
  position: relative;
  composes: red_trans_back_colored from "style.css";
  color:#fff;
}
.harassment_top_blue_wrapper .container_l {
  padding: 20px 40px;
}
.harassment_top_blue_wrapper:after {
  content: "";
  display: block;
  position: absolute;
  top: 100%;
  right: 50%;
  transform: translatex(50%);
  box-sizing: border-box;
  border-right: calc(50vw - 10px) solid transparent;
  border-left: calc(50vw - 10px) solid transparent;
  border-top: 100px solid rgba(195,13,35,0.8);
}
.harassment_top_blue_list{
  padding-left: 20px;
}
.harassment_top_blue_list ul li{
  padding: 5px 0;
  font-size: 1.2rem;
}
.harassment_top_blue_list ul li span{
  position: relative;
  display: inline-block;
  width:20px;
  height:20px;
  background-color: #fff;
  margin-right: 5px;
}
.harassment_top_blue_list ul li span:after{
  content: '';
  display: inline-block;
  position: absolute;
  top:2px;
  left: 3px;
  width: 10px;
  height: 7px;
  border-left: 2px solid #C30D23;
  border-bottom: 2px solid #C30D23;
  transform: rotate(-45deg);
}
.harassment_saiban{
  display: inline-block;
  font-size:1.1rem;
  background-color:#3e3a39;
  color:#fff;
  padding:5px 10px;
  margin: 10px 0;
  border-radius: 20px;
}
.harassment_saiban_list ul li{
  /*font-family: '新ゴ M';*/
  display: block;
  font-size: 1.4rem;
  margin-bottom: 10px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 600;
}
.harassment_saiban_list ul li img{
  width:30px;
  padding-right: 5px;
  vertical-align: middle;
}
.harassment_saiban_list span{
  font-size:1rem;
}
.harassment_saiban_block{
  display: flex;
}
.harassment_saiban_left{
  width:65%;
}
.harassment_saiban_illust{
  width:35%;
}
.harassment_kaiketsu_block{
  background-color: #eee;
  padding: 40px;
}
.harassment_kaiketsu_block_inner{
  position: relative;
}
.harassment_kaiketsu_block_inner .harassment_kaiketsu_mark{
  position: absolute;
  right:0;

}
.harassment_kaiketsu_title{
  position: relative;
  z-index: 2;
}
.harassment_kaiketsu_content{
  position: relative;
  font-size: 1.4rem;
  padding: 10px 20px 10px 60px;
  z-index: 2;
  font-weight: 600;
}


.fee_list{
  width:600px;
  margin: 0 auto;
}
.fee_list ul{}
.fee_list ul li{
}
.fee_list_item{
  display: table;
  border-collapse: collapse;
  width:100%;
  border-top:3px solid #eee;
}
.fee_list_item_left,.fee_list_item_right{
  display: table-cell;
  width:50%;
  padding:10px 20px;
  text-align: center;
}
.fee_list_item_left{
  border-right:3px solid #eee;
  border-left:3px solid #eee;
}

.fee_list_item_right{
  border-right:3px solid #eee;
}
.fee_list ul li:first-child{
  background-color: #eee;
}
.fee_list ul li:last-child{
  border-bottom:3px solid #eee;
}
.fee_list ul li:first-child .fee_list_item_left{
  border-right:3px solid #fff;
}
.harassment_top_onayami_block{
  display: flex;
  align-items: center;
}

.harassment_faq_list{
  padding: 60px;
}
.harassment_faq_list ul li{
  margin-bottom: 40px;
}

.harassment_faq_list ul li:last-child{
  margin-bottom: 0;
}
.harassment_faq_title{
  composes: red_colored from "style.css";
  border-bottom: 1px solid #C30D23;
  margin-bottom: 10px;
  font-weight: 500;
}
.harassment_faq_title, .harassment_faq_content{
  font-size: 1.5rem;
}

.link_table ul{
  display: flex;
  flex-wrap: wrap;
  color:#fff;
  /*font-family: "新ゴ M";*/
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 600;
  font-size: 1.2rem;
}
.link_table ul li{
  width:calc(100%/3);
  background: linear-gradient(to top,rgba(0,0,0,0.8),rgba(0,0,0,1));
  padding: 40px 10px;
  text-align: center;

}
.link_table_inner{

}
.link_table ul li:nth-child(2n){
  background: linear-gradient(to top,#C30D23,#EA652D);

}

.contact_wrapper{
  padding: 40px;
  background-color: #fff;
}
.contact_form_item{
  display: flex;
  align-items: center;
  padding: 10px 0;
}
.contact_form_item label{
  width:150px;
}



/* Mobile */
@media (max-width: 768px) {
  .fee_list{
    width:100%;
  }
  .contact_form_item label,.contact_form_item input,.contact_form_item textarea{
    display: block !important;
    width:100% !important;
  }


  .harassment_top_title{
    margin-bottom: 20px;
  }


  .harassment_top_onayami_block{
    display: block;
    align-items: center;
  }
.harassment_top_blue_list{
  padding: 0;
}

  .content {
    padding: 4rem;
  }
  .grid {
    grid-template-columns: 1fr;
    margin-bottom: 120px;
    max-width: 320px;
    text-align: center;
  }

  .center {
    padding: 8rem 0 6rem;
  }

  .center::before {
    transform: none;
    height: 300px;
  }

  .description {
    font-size: 0.8rem;
  }

  .description a {
    padding: 1rem;
  }

  .description p,
  .description div {
    display: flex;
    justify-content: center;
    position: fixed;
    width: 100%;
  }

  .description p {
    align-items: center;
    inset: 0 0 auto;
    padding: 2rem 1rem 1.4rem;
    border-radius: 0;
    border: none;
    border-bottom: 1px solid rgba(var(--callout-border-rgb), 0.25);
    background: linear-gradient(
      to bottom,
      rgba(var(--background-start-rgb), 1),
      rgba(var(--callout-rgb), 0.5)
    );
    background-clip: padding-box;
    backdrop-filter: blur(24px);
  }

  .description div {
    align-items: flex-end;
    pointer-events: none;
    inset: auto 0 0;
    padding: 2rem;
    height: 200px;
    background: linear-gradient(
      to bottom,
      transparent 0%,
      rgb(var(--background-end-rgb)) 40%
    );
    z-index: 1;
  }


  .common_page_top{
    position: relative;
    height:300px;
  }
  .common_page_top img{
    object-fit: cover;
    width:100%;
    height:300px;
  }


  .harassment_saiban_block{
    display: block;
    margin-top: 50px;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  }
  .harassment_saiban_left{
    width:100%;
  }
  .harassment_saiban_illust{
    width:100%;
  }
  .harassment_kaiketsu_block{
    padding: 10px;
  }
  .harassment_kaiketsu_title{
    text-align: left;
    font-size:1.5rem;
  }
  .harassment_kaiketsu_content{
    font-size: 1.2rem;
    padding: 0;
  }
  .harassment_faq_title, .harassment_faq_content{
    font-size: 1.2rem;
  }
  .harassment_saiban_list ul li{
    display: block;
    font-size: 1.2rem;
    margin-bottom: 10px;
  }



  .link_table ul{
    display: block;
    font-size: 1.1rem;
  }
  .link_table ul li{
    width:100%;

  }


  .harassment_top_title{
    margin: 100px 0 10px;
  }

  .harassment_faq_list{
    padding: 0;
  }


}







/* Tablet and Smaller Desktop */
@media (min-width: 701px) and (max-width: 1120px) {
  .grid {
    grid-template-columns: repeat(2, 50%);
  }
}

@media (prefers-color-scheme: dark) {
  .vercelLogo {
    filter: invert(1);
  }

  .logo {
    filter: invert(1) drop-shadow(0 0 0.3rem #ffffff70);
  }
}

@keyframes rotate {
  from {
    transform: rotate(360deg);
  }
  to {
    transform: rotate(0deg);
  }
}
