/*------index-----*/

#visual_area .kv_pic{
  text-align: center;
    margin: 0 auto;
}

#index_contents .item_wrap .item {
    position: relative;
    width: 31%;
    float: left;
    display: block;
    padding: 0 0 35px;
    margin: 0 1%;
}

/*------flow-----*/
#flow_contents{
  margin: 0 auto;
}
#flow_contents .flow_02ttl{
  border-bottom: 1px solid #383B42;
  padding-bottom: 3%;
  font-size: 20px;
  font-family: 'Staatliches', cursive;
}

#flow_contents .flow_btn .col2:nth-child(1) {
    border-right: 1px dotted #111111;
}
#flow_contents .flow_btn .btn_left{
  text-align: right;
  padding: 0 10%;
}
#flow_contents .flow_btn .btn_right{
  text-align: left!important;
  padding: 0 9%;
}

#flow_contents .flow_03ttl{
  font-size: 21px;
}

/*------faq-----*/
#faq_contents{
  margin: 0 auto;
}
#faq_contents .faq_02ttl{
  font-size: 21px;
}
#faq_contents .faq_btn .col2:nth-child(1) {
    border-right: 1px dotted #111111;
}
#faq_contents .faq_btn .btn_left{
  text-align: right;
  padding: 0 10%;
}
#faq_contents .faq_btn .btn_right{
  text-align: left;
  padding: 0 9%;
}

#faq_contents h4 {
	position: relative;
	min-height:60px;
	line-height:60px;
	padding:0 20px;
	box-sizing:border-box;
	border-bottom: #707070 1px solid;
	cursor: pointer;
	font-size: 16px;
}

#faq_contents h4:after {
	position: absolute;
	right: 20px;
	top: 50%;
	margin-top: -12px;
	width: 17px;
	height: 17px;
	content: '';
	display:block;
	border-right: 1px solid #707070;
	border-bottom: 1px solid #707070;
	transform: rotate(45deg);
}

#faq_contents h4.close:after{
	transform: rotate(-135deg);
	margin-top: -6px;
}

#faq_contents dl {
	display: none;
	margin:40px auto;
}
#faq_contents dl dt {
    margin-bottom: 1%;
    color: #0000C5;
}

#faq_contents dl dd {
    margin-bottom: 5%;
}

#faq_contents dl dt, #faq_contents dl dd {
	position: relative;
	padding-left: 5%;
  margin-inline-start: 0px;
}


/*------sale-----*/
#sale_contents{
  margin: 0 auto;
}

#sale_contents .sale_02_ttlimg{
  position: relative;
}

#sale_contents .sale_02_ttlimg p {
  position: absolute;
  top: 63%;
  left: 50%;
  -ms-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  margin:0;
  padding:0;
  /*文字の装飾は省略*/
  }
#sale_contents .sale_02ttl{
  font-size: 16px;
  border-bottom: 1px solid #383B42;
  padding-bottom: 3%;
}

#sale_contents .sale_03ttl{
  border-bottom: 1px solid #383B42;
  padding-bottom: 3%;
  font-size: 20px;
  font-family: 'Staatliches', cursive;
}

/*------pm-----*/
#pm_contents{
  margin: 0 auto;
}
#pm_contents .pm_04 .pm_04box .col3:nth-child(1),
#pm_contents .pm_04 .pm_04box .col3:nth-child(2),
#pm_contents .pm_04 .pm_04box .col3:nth-child(4),
#pm_contents .pm_04 .pm_04box .col3:nth-child(5) {
    border-right: 1px dotted #111111;
}
#pm_contents .pm_04 .pm_04box .col3:nth-child(1),
#pm_contents .pm_04 .pm_04box .col3:nth-child(2),
#pm_contents .pm_04 .pm_04box .col3:nth-child(3) {
    border-bottom: 1px dotted #111111;
}

/*------company-----*/
#company_contents{
  margin: 0 auto;
}
#company_contents .company_02 .outline_table{
  font-size: p14;
}

#company_contents .company_02 .outline_table th{
  width: 20%;
  text-align: left;
  font-weight: normal;
  vertical-align: top;
}
#company_contents .company_04_ttl{
  border-bottom: 1px solid #383B42;
  padding-bottom: 3%;
}
#company_contents .company_04text_r{
  padding: 0 22% 0 10%;
}
#company_contents .company_04text_l{
  padding: 0 10% 0 22%;
}

#company_contents .company_05_ttl{
  margin-right: 3%;
}
#company_contents .company_05pdf{
  margin-right: 1%;
}

/*------sitemap-----*/
#sitemap_contents{
  margin: 0 auto;
}

/*------contact-----*/

#contact_contents{
  margin: 0 auto;
}

#contact_contents .contactbox{
  border: 1px solid #0000C5;
  padding: 5%;
  margin: 5%;
}

#contact_contents .contactbox .contactbtn{
  color: #fff;
  background-color: #0000C5;
  padding: 3% 15%;
}

/*------news-----*/

.list-topic {
    padding-right: 100px;
    overflow-y: auto;
    font-size: 15px;
    line-height: 2.15;
}
.list-topic dd span {
    background-color: #0000C5;
    color: #fff;
    display: inline-block;
    vertical-align: top;
    padding: 2px 10px;
    border-radius: 16px;
    letter-spacing: 2px;
    margin-right: 3%;
    max-width: calc(100% - 150px);
    font-size: 13px;
}
.list-topic dt{
  float: left;
  width: 21%;
  clear: both;
  margin-bottom: 3%;
}
.list-topic dd{
  margin-bottom: 3%;
}

.list-topic dd:not(:last-child) {
    margin-bottom: 15px;
}

/*------yimin-----*/

#yímín_contents{
  margin: 0 auto;
}
.yímín_02_box{
  margin-bottom: 5%;
}
.yímín_02_box .yímín_02ttl{
  
  font-family: 'Staatliches';
  font-size: 20px;
  border-bottom: 1px solid #383B42;
  padding-bottom: 1%;

}
.yímin_03_table{
  border-spacing: 0px;
  border-bottom: 2px solid #0000C4;
  border-top: 2px solid #0000BD;
  margin: 0 auto;
}
.yímin_03_table tr{
  width: 33%;
}
.yímin_03_table tr th,
.yímin_03_table tr td{
  text-align: center;
  width: 33%;
  padding: 2% 0;
}
.yímin_03_table tr th{
  font-size: 14px;
  color: #0000C5;
  font-weight: 100;
  border-bottom: 2px solid #0000BD;
}
.yímin_03_table tr td{
  border-bottom: 1px solid #CBCBCB;
}
.yímin_03_table .border_r{
  border-right: 1px solid #0000BD;
}

.yímín_04 .yímín_04_step{
  font-family: Staatliches;
    font-size: 20px;
}

.yímín_04 .circle{
  margin: 0 auto;/* ←ブロック要素が左右に中央揃え */
  display: flex; /* 文字と横線を横並び */
  justify-content: center;
  align-items: center;
}
.yímín_04 .circle .en{
  display: inline-block;
  width: 43px;
  height: 43px; 
  border: #0000C5 5px solid;
    border-radius: 50%; 
  }

.yímín_04 .circle::before,
.yímín_04 .circle::after {
  background-color: #0000C5; /* 横線の色 */
  content: "";
  height: 5px; /* 横線の高さ */
  width: 39%; /* 横線の長さ */
}

.yímín_04_list ol{
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding:0.5em;
}

.yímín_04_list ol li .gray{
  background-color: #F5F5F5;
    padding: 1px 20px;
    margin-top: 1%;
}

.yímín_04_list ol li {
  position: relative;
  padding: 2% 0 2% 40px;
  font-size: 20px;
}

.yímín_04_list ol li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*以下数字のデザイン変える*/
  display:inline-block;
  color: #0000C5;
  font-family: 'Staatliches';
  font-size: 30px;
  left: 0;
  width: 26px;
  line-height: 25px;
  text-align: center;
}

.yímín_04_list ol li ol{
  list-style-type: auto !important;
  padding-left: 3%;
}
.yímín_04_list ol li ol li{
  padding: 0% 0 1% 0px;
  font-size: 16px;
}
.yímín_04_list ol li ol li:before{
  display: none;
}

.yímín_04_list ol li ol li ul{
  list-style: disc;
}

.yímín_05_box{
  display: inline-block;
    background: #fff;
    width: 80%;
    padding: 80px 20px 0px;
    box-shadow: 8px 8px 10px 1px #C4C6D1;
    height: 90%;
}

.yímín_05_box ul {
    list-style: disc;
    margin-left: 8%;
}
.yímín_05_box ul li{
  font-size: 13px;
}

.yímín_05 .box_0501,
.yímín_05 .box_0502,
.yímín_05 .box_0503{
  position: relative;
}

.yímín_05 .box_0501 .box_0501_svg,
.yímín_05 .box_0502 .box_0502_svg,
.yímín_05 .box_0503 .box_0503_svg{
  position: absolute;
  display: inline-block;
  text-align: center;
  background: #fff;
  border-radius: 80px;
  padding: 30px 0;
  box-shadow: 8px 8px 10px 1px #C4C6D1;
  width: 122px;
  top: -10%;
  left: 25%;
  right: 25%;
}

.yímín_06 .yímín_02ttl{
  font-family: 'Staatliches';
  font-size: 20px;
  padding-bottom: 1%;
  color: #0000C5;
  position: relative;
}

.yímín_06 .col2 .yímín_06_box{
  width: 90%;
    margin: 0 auto;
}

.yímín_06 .yímín_02ttl::before {
  position: absolute;
  content: url(/wp-content/themes/takuto/img/yímín/06_icon.svg);
  vertical-align: middle;
  padding-right: 5px;
  right: 0;
}

.yímín_06 .col2:nth-of-type(1),
.yímín_06 .col2:nth-of-type(3),
.yímín_06 .col2:nth-of-type(5){
  border-right: 1px #0000C5 dotted;
}

.yímín_07  .integral_table{
  border-top: 2px solid #4040CD;
    border-bottom: 2px solid #4040CD;
}

.yímín_07 .integral_table .bg_CCCCF4{
  background-color: #CCCCF4;
  border-radius: 10px;
  text-align: center;
  padding: 35px 0;
  width: 240px;
}
.yímín_07 .integral_table .bg_EDD1F4{
  background-color: #EDD1F4;
  border-radius: 10px;
  text-align: center;
  padding: 35px 0;
  width: 240px;
}

.yímín_07 .integral_table tr .td_2{
  display: flex;
  align-items: center;
}
.yímín_07 .integral_table tr .td_2 .ab{
  width: 15%;
}
.yímín_07 .integral_table tr .td_2 .ab_text{
  width: 80%;
  font-size: 14px;
}
.yímín_07 .integral_table tr td{
  text-align: center;
  border-bottom: 1px solid #D5D5D5;
  padding: 15px 0px;
}

.yímín_07 .integral_table tr td span{
  text-align: left;
}
.yímín_07 .integral_table tr td.blue18{
  width: 5%;
}

.yímín_btn .flex{
  justify-content: center;
}
.yímín_btn_box img{
  margin-right: 2%;
}

.yímín_btn .col2:nth-of-type(1){
  border-right: 1px dotted #0000C5;
}

.yímín_06_ttlimg{
  position: relative;
}

.yímín_06_ttlimg p {
    position: absolute;
    top: 30%;
    left: 50%;
    -ms-transform: translate(-50%,-50%);
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    margin: 0;
    padding: 0;
}


.yímín_side_list {
    width: 250px;
    padding: 2% 1%;
    left: 0%;
    top: 30%;
    position: fixed;
    background-color: rgba(0,0,197,0.2);
}

.yímín_side_list ul li{
  margin-bottom: 3%;
    padding-bottom: 3%;
    border-bottom: 1px dotted #fff;
}


/*------privacy-----*/
#privacy_contents{
  margin: 0 auto;
}
.privacy_01 ol.num{
  margin-left: 2rem;
}

.privacy_01 ol li{
  margin-bottom: 2%;
  font-size: 14px;
}
