/* --------------- select --------------- */

/* ----- select-section ----- */

#select{
    padding: 100px 0 100px 0;
    border-bottom: 1px solid #ccc;
}

.select-wrap {
    width: 900px;
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 180px;
    margin: 50px 0 0 0;
}
#select .img{
        display: block;
}
.select-itemWrap {
    width: 360px;
}

#select .select-itemWrap .text-note {
    width: 100%;
    text-align: left;
    margin-top: 1.5em;
    white-space: normal;
}
.select-item{
    width:100%;
    display: inline-block;
    border: 1px solid #1C63AA;
    position: relative;
            background-color: #1C63AA;
}
.implant-ph{
    width: 358px;
    display: block;
}
.tool-ph{
    width: 358px;
        display: block;
}
#select .heading{
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.4;
    color: #FFF;
}
#select .item-inner{
    padding: 20px 10px ;
}
#select a{
    text-decoration: none;
}
#select p{
    white-space:nowrap;
        color: #FFF;
}

#select a:hover{
    background-color: #0C3874;
}
.wp-block-spacer{
display:none;
}
.o-attention{
  color:red;
  text-align: left;
  font-weight: 600;
  font-size: 1.6rem;
}
.dent-title{
    margin-top: 50px;
	font-size: 1.8rem;
	line-height: 1.4;
	color:#C4003C;
}
.attention-wrap{
   margin-top: 20px;
}
.dent-text{
  font-size: 1.6rem;
  text-align: left;
  text-indent: -0.6em;
  padding-left: 0.6em;
}

@media screen and (max-width: 940px) {
.select-wrap {
    width: 100%;
    gap: 5%;
}
.select-item {
    width: 47.5%;
}
.implant-ph {
    width: 100%;
}
.tool-ph {
    width: 100%;
}
    .o-attention{
  margin: 0;
    font-size: 1.4rem;
    text-align: left;
}
}


@media screen and (max-width: 600px) {

t-item {
    margin: 20px 0 20px 0;
}
.dent-title {
    margin-top: 0;
}
#select .heading {
    font-size: 2rem;
}
}
@media screen and (max-width: 480px) {
#select {
    padding: 120px 0 40px 0;
}
.select-item {
    width: 300px;
}

.select-wrap {
    row-gap: 30px;
    margin: 30px 0 0 0;
}
}

/* ----- fax-section ----- */
#fax-sheet{
    padding: 100px 0 100px 0;
}

.fax-wrap{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 30px 0 20px 0;
}
.fax-item{
  width: 15%;
  text-align: center;
}
.pdf-type{
  font-size: 14px;
  line-height: 1.4;
}

#fax-sheet a{
    text-decoration: none;
    color: #333;
}


@media screen and (max-width: 1120px) {
    .fax-wrap{
  gap:5%;
 row-gap: 20px;
}
.fax-item{
  width: 30%;
}
}


@media screen and (max-width: 600px) {

    .fax-wrap{
  gap:4%;
 row-gap: 20px;
}
.fax-item{
  width: 48%;
}
}
@media screen and (max-width: 480px) {

#fax-sheet{
    padding: 50px 0 50px 0;
}
}


/* --------------- form --------------- */

/* ----- flow-section ----- */

.wp-block-spacer {
    display: none;
}
#flow {
    margin: 120px 0 0 0;
    width: 100%;
}
#flow li {
    font-size: 16px;
    line-height: 60px;

    font-weight: 500;
    list-style: none;
    text-align: center;
    position: relative;
}
#flow .first, #flow .second, #flow .third{
    width: 32.8%;
}
#flow ul {
    text-align: center;
    width: 100%;
    display: inline-flex;
    justify-content: space-between;
    margin-block-start: 0;
    margin-block-end: 0;
    padding-inline-start: 0;
}
.basic {
    background: #e3e3e3;
    color: #333;
}
.current {
    background: #1C63AA;
    color: #fff;
}
#flow li.first:after, #flow li.second:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 0 30px 24px;
    position: absolute;
    top: 0;
    right: -24px;
    z-index: 2;
}

#form-input li.current:after {
    border-color: transparent transparent transparent #1C63AA;
}
#form-input li.second:after {
    border-color: transparent transparent transparent #e3e3e3;
}
#form-confirm li.first:after {
    border-color: transparent transparent transparent #e3e3e3;
}
#form-confirm li.second:after {
    border-color: transparent transparent transparent #1C63AA;
}
#form-complete li.first:after {
    border-color: transparent transparent transparent #e3e3e3;
}
#form-complete li.second:after {
    border-color: transparent transparent transparent #e3e3e3;
}
#flow li.second:before, #flow li.third:before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 0 30px 24px;
    border-color: transparent transparent transparent #fff;
    position: absolute;
    top: 0;
    left: 0;
}
#attention a:where(:not(.wp-element-button)){
    color: #1C63AA!important;
}
#attention .blue{
    color: #1C63AA!important;
}
.flow-wrap{
    width: 700px;
    border: 1px solid #ccc;
    padding: 30px;
    display: inline-block;
    margin: 0 0 20px 0;
}
#pd01 h1 {
    font-size: 32px;
    font-weight: 500;
    line-height: 1.4;
    margin: 0;
     font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.order-title-wrap {
    padding: 100px 0 50px 0;
}
.flow-title{
    font-size: 18px;
    line-height: 1.4;
    font-weight: 600;
    margin-bottom: 10px;
}
.strong{
    font-weight: 600;
}
.indent01{
    padding-left:2em;
    text-indent:-2em;
}
.indent04{
    padding-left:2em;
}
.o-attention{
  margin: 20px 0 0 0;
  color:red;
  text-align: center;
  font-weight: 600;
}
#form-complete .attention {
    font-size: 18px;
    line-height: 1.6;
    margin-top: 30px;
    color: red;
	text-align: center;
}

@media screen and (max-width: 600px) {
.flow-wrap{
    width: 100%;
    padding: 10px;
}
.first{
    width:40%;
}
.third{
    width:30%;
}
.second{
    width:43%;
}
.o-attention{
  margin: 20px 0 0 0;
    font-size: 14px;
    text-align: left;
}
}


/* ----- form-section ----- */

.sub-title{
   font-size: 16px;
   line-height: 1.4;
}

summary {
    border: 1px solid #ccc;
    padding: 12px 90px 12px 15px;
      cursor: pointer;
   border-radius: 3px;
   position:relative;
 }
.click {
  position:absolute;
  right:10px;
  top:10px;
  font-size:14px;
  line-height:26px;
  background-color: #1C63AA;
  color: #fff;
  padding: 0 20px 0 20px;
  border-radius: 15px;
}
summary::marker{
  position:absolute !important;
  left:12px;
}
details {
      font-size:16px;
    line-height: 1.4;
     text-align: left;
         padding: 12px 0 12px 0;
}
details[open] {
   border-radius: 3px;
}
.p-wrap{
   width:100%;
   display: inline-flex;
   flex-wrap: wrap;
   justify-content: space-between;
   margin-top: 30px;
}

.pd-left, .pd-right{
width: 47%;
}

.pd-left{
  margin-right: 3%;
}
.pd-right{
  margin-left: 3%;
}
#pd01 dl{
   width:100%;
   display: inline-flex;
   padding: 12px 0;
   border-bottom: 1px solid #ccc;
   position: relative;
     margin: 0;
    margin-block-start: 0;
    margin-block-end: 0;
}
#pd01 dt {
    font-weight: 500;
}
#p-nm {
    width: calc(80% - 50px);
}
.di {
    width: 20%;
}
.space {
    width: 50px;
}
.ty {
    width: 15%;
}

.qu01 {
    background-color: #EAEAEA;
    border: 0;
    width: 60px;
    height: 40px;
    margin: 2px 0 0 0;
    padding: 10px;
    font-size: 16px;
    line-height: 1;
    text-align: center;
    padding: 10px;
    font-weight: 500;
    border-radius: 3px;
}
dd.qu-box{

    position: absolute;
    right:0;
    top:4px;
}

.qu{
    position: absolute;
    right:20px;
    font-weight: 500;
}
.click p{
    color: #fff;
}

#profile {
    padding: 50px 100px 100px 100px;
}

#t-area{
    width:100%;
    background-color: #EAEAEA;
    border: 0;
    border-radius: 3px;
    height: 40px;
    font-size: 16px;
    line-height: 1.4;
    padding: 6px;
    color: #333;
}

.t-area02{
    height: 200px;
}

#profile dl {
    position:relative;
    border-bottom: 0px;
    display: inline-flex;
      margin: 0;
    margin-block-start: 0;
    margin-block-end: 0;
    text-align: left;

}
#profile .first, #profile .second, #profile .third {
    width: auto;
}
p{
    margin:0;
}

dd, dt {
    margin-inline-start: 0px;
}
#profile dt{
    font-size: 16px;
    line-height: 1.4;
    width: 310px;
    height: 40px;
    padding: 10px 0 0 0;
}

#profile dd{
    font-size: 16px;
    line-height: 1.4;
    width: calc(100% - 310px);
    position:relative;
        padding: 10px 0 0 0;
    margin-inline-start: 0;
}
.t-area03{
    width: 240px;
    height: 40px;
}

#pref{
     font-size: 16px;
    line-height: 1.4;
    padding: 6px;
    height: 40px;
    border-radius: 3px;
    background-color: #fff;
}
.t-area01, .t-area04, .date-area01{
    width:100%;
    font-size: 16px;
    line-height: 1.4;
    background-color: #EAEAEA;
    padding: 6px;
    border: 0;
    border-radius: 3px;
    height: 40px;
     margin-top: -20px;

}


.t-area02{
    width: 100%;
    background-color: #EAEAEA;
    border: 0;
    border-radius: 3px;
    height: 160px;
     font-size: 16px;
    line-height: 1.4;
    padding: 6px;
    color: #333;
}
.radio-area{
    height: 40px;
    padding: 10px 0 0 0;
    margin: 0px 0 3px 0 ;
}
.radio-name{
    margin: 0 10px 0 6px;
}

.t-area04{
    width: 97%;
    height: 40px;
    margin-bottom: 20px;
}
.adress-wrap{
  margin:20px 0 0 0;
}

.adress-wrap:first-child{
  margin:0;
}
.ad-area {
    margin: 0 0 20px 0;
}
.required {
    font-size: 14px;
    line-height: 1.4px;
    /* padding: 2px 6px 2px 6px; */
    color: #fff;
    background-color: #DC000C;
    /* margin-right: 30px; */
    border-radius: 2px;
}
.any {
    font-size: 14px;
    line-height: 1.4px;
    /* padding: 2px 6px 2px 6px; */
    color: #fff;
    background-color: #1C63AA;
    /* margin-right: 30px; */
    border-radius: 2px;
}
.submit-wrap{
    text-align:center;
    margin-top:40px;
	width: 100%;
}
.submit{
     font-size: 16px;
    line-height: 1;
    color: #fff;
    width: 290px;
    height: 60px;
    background-color: #1C63AA;
    display: inline-block;
    border-radius: 30px;
    border: 0;
    text-align: center;
    margin: 20px;
}
.wpcf7-form-control{
    padding: 10px;
}
.submit:hover{
    background-color: #123C67;
}

#attention{
    font-size: 16px;
    line-height: 2;
    text-align: left;
    padding:0 0 100px 0;
    display: inline-block;
    position: relative;
    margin:0 0 0 20px;
}
.labels::before {
    content: "※";
    position: absolute;
    left: -20px;
}
.attention-wrap{
text-align: center;
}

.attention01{
    font-size: 14px;
    line-height: 2;
    text-align: left;
    margin-left: 20px;
    font-weight: 400;
}
#cat-ty p{
    font-size: 16px;
    line-height: 2;
    text-align: left;
    margin-top: 20px;
    font-weight: 700;
    background-color: #1C63AA;
    color: #fff;
    padding-left: 10px;
}

#pd01 br{
   display:none;
}

#pd01 .p-wrap br{
   display:block;
}

.last-attention{
    font-size: 16px;
    line-height: 2;
    margin:30px 0 30px 0;
}
a.other-link{
  font-size: 14px;
  line-height: 1.6;
  text-decoration: none;
  margin: 10px 0 10px 0;
}
.check-confirm{
    font-size: 18px;
    font-weight:600;
}
.wpcf7-spinner{
    display: none!important;
}

.check-confirm{
    font-size: 18px;
    font-weight:600;
}
.remarks-wrap{
    text-align:left;
    border: 1px solid #ccc;
    padding: 10px 0;
    margin-top: 10px;
    border-radius:3px;
    font-size: 16px;
    display: flex;
}

#remarks .wpcf7-list-item-label{
    display:none;
}
.remarks-left{
    width: calc(100% - 100px);
    margin-left: 10px;
    margin-right : 10px;
}
.remarks-right{
    width: 88px;
    text-align: right;
        display: flex;
        margin-right : 8px;
        color: #1C63AA;
}

#remarks .wpcf7-list-item{
    margin: 0;
}
.remarks-right p {
   display: flex;
}
#t-area {
    background-color: #EAEAEA;
    border: 0;
    border-radius: 3px;
    height: 40px;
    font-size: 16px;
    line-height: 1.4;
    padding: 6px;
    color: #333;
}
.t-area05 {
    width: 97%;
    background-color: #EAEAEA;
    border: 0;
    border-radius: 3px;
    height: 80px;
    font-size: 16px;
    line-height: 1.4;
    padding: 6px;
    color: #333;
}
@media screen and (max-width: 1120px) {

    #profile {
        padding: 0;
    }
    #profile dt {
    width: 220px;
    }
        #profile dd {
    width: calc(100% - 220px);
    }
    .p-wrap {
        display: inline-block;
    }
    #pd01 dl {
        width: 100%;
    }
    .pd-left {
        width: 100%;
        margin-right: 0;
    }
    .pd-right {
        width: 100%;
        margin-left: 0;
    }
}
@media screen and (max-width: 600px) {
    .article-content p {
        font-size: 14px;
        line-height: 1.6;
    }
    details {
    font-size: 14px;
}
    .ty {
        width: 40px;
    }
    .pc-only {
        display: none;
    }
.qu01 {
        height: 28px;
        font-size: 14px;
	margin: 0;
    }

    dd.qu-box {
        top: 5px;
    }
    #cat-ty p {
        font-size: 14px;
        line-height: 1.6;
    }
    #p-nm {
    width: calc(74% - 50px);
    padding-right: 10px;
    }
    #profile {
        padding: 30px 0px 50px 0px;
    }
    #profile dl {
        display: inline-block;
        margin-top: 0;
    }
#profile dt {
    margin: 0 0 10px 0;
}
    
    #profile dd {
        width: 100%;
    }
    .title-wrap {
        padding: 50px 0 30px 0;
    }
    #attention {
        padding: 0 0 30px 0;
    }
    .required, .any {
        margin-right: 10px;
    }
     a.other-link{
  font-size: 13px;
}
    .check-confirm{
    font-size: 16px;
}
    .t-area02 {
    margin: -18px 0 0 0;
}
    #pd01 dl {
    padding: 8px 0;
}
    }

/* ----- confirm-section ----- */

.confirm-text-wrap{
    margin: 50px 0 50px 0;
text-align: center;
}

#confirm-text p{
    font-size: 24px;
    line-height: 1.5;
    font-weight: 600;
}
#confirm-products{
    padding: 0 0 60px 0;
    width: 800px;
    display: inline-block;
}
#confirm-products dl{
    width: 100%;
    display: flex;
        margin-block-start: 0;
        margin-block-end: 0;
}
#confirm-products dt{
    width: 699px;
    text-align: left;
    padding: 10px 20px;
    background-color: #D3EAFD;
    border-bottom: 1px solid #fff;
    margin-right: 1px;
        margin-block-start: 0;
        margin-block-end: 0;
}
#confirm-products dd{
    width: 100px;
    text-align: center;
    padding: 10px 20px;
    background-color: #F7F8FA;
    border-bottom: 1px solid #fff;
        margin-block-start: 0;
        margin-block-end: 0;
}
#total-sum{
    width: 100%;
    text-align: right;
    padding: 8px 20px 8px 0;
    background-color: #F7F8FA;
    margin: 10px 0 0 0;
}


#confirm{
    padding: 0 0 100px 0;
    width: 800px;
    display: inline-block;
}   
#confirm dl{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}

#confirm dt{
    width: 300px;
    text-align: left;
    padding: 10px 0;
    border-bottom: 1px solid #ccc;
    margin-right: 20px;
}

#confirm dt p{
    font-weight: 500;
}
#confirm dd{
    width: 480px;
    text-align: left;
    padding: 10px 0;
    border-bottom: 1px solid #ccc;
}
.return{
    font-size: 16px;
    line-height: 1;
    color: #1C63AA;
    width: 290px;
    height: 40px;
    background-color: #fff;
    display: inline-block;
    border-radius: 30px;
    border: 1px solid #1C63AA;
    text-align: center;
    margin: 40px 0 0 0;
}
.return:hover{
    background-color: #ccc;
}
@media screen and (max-width: 600px) {
#confirm-text p {
    font-size: 18px;
}
#confirm-products{
     width:100%;
     padding: 0 0 30px 0;
}
#confirm{
    width:100%;
    padding: 0 0 50px 0;
}
#confirm dt{
    width:100%;
    border-bottom: 0;
    padding: 10px 0 0 0;
}
#confirm dd{
    width:100%;
    padding: 0 0 10px 0;
}
.return{
    margin: 0;
}
}