@charset "utf-8";
/*  

ページネーション 
コンタクトフォーム 
固定ページ共通 page.php
固定ページ biography用カスタム 

*/
 

/* 投稿カスタマイズ用 */
.p_10px{
padding: 20px;
}
.p_20px{
padding: 20px;
}
.p_30px{
padding: 30px;
}

.pt_10px{
padding-top: 10px;
}
.pt_20px{
padding-top: 20px;
}
.pt_30px{
padding-top: 30px;
}
.pt_40px{
padding-top: 40px;
}

.pb_10px{
padding-bottom: 10px;
}
.pb_20px{
padding-bottom: 20px;
}
.pb_30px{
padding-bottom: 30px;
}
.pb_40px{
padding-bottom: 40px;
}

a:hover{
opacity: .8;
}

.border_1px{
border: solid 1px #222;
}
.border_2px{
border: solid 2px #222;
}
.border-red_2px{
border: solid 2px red;
}

.yb_wide{
aspect-ratio: 16 / 9;
}

.ub-buttons>.ub-button-container{
margin:0;
}

.ub-button-full-width{
box-sizing:border-box;
}



/*-------------------------------------------
ページネーション
-------------------------------------------*/
.pagination {
margin-top: 50px;
}

.nav-links{
gap: 16px;
display: flex;
flex-wrap: wrap;
justify-content: center;
}

.pagination .page-numbers{
display:inline-block;
padding:14px;
color:#0d2a67;
border: solid 1px #0d2a67;
background:#fff;
font-weight: bold;
}

.pagination .current{
padding:14px;
background:#0d2a67;
color:#fff;
}

.pagination .prev,
.pagination .next{
box-shadow:none;
padding:14px;
color:#0d2a67;
border: solid 1px #0d2a67;
background:#fff;
}

.pagination .dots{
background:transparent;
box-shadow:none;
border: none;
}

.pagination .page-numbers:hover {
opacity: 0.7;
}

@media (max-width:599px) {
.pagination .page-numbers{
  padding:8px;
}

.nav-links{
  gap: 8px;
}
}

/*-------------------------------------------
コンタクトフォーム
-------------------------------------------*/
.contact .page-title {
box-sizing: border-box;
margin: 0 auto 50px;
text-align: left;
color: #0d2a67;
max-width: 1100px;
}

.contact-content-required{
margin-bottom: 30px;
}

.contact-content-required > .title{
margin-bottom: 8px;
}

.contact-content-required .input-text input,
.contact-content-required select {
border: 1px solid #666!important;
background-color: #d4ddf1;
height: 36px;
box-sizing:border-box;
}

.contact-content-required .input-text textarea{
height:290px ;
border: 1px solid #666!important;
background-color: #d4ddf1;
box-sizing:border-box;
}

input:-internal-autofill-selected {
  background-color: #d4ddf1!important;
}

.contact_wrapper{
max-width: 660px;
margin: 0 auto;
}

.contact-form {
padding: 50px 30px;
width: 100%;
}

.contact-content-required > .title > label {
position: relative;
font-weight: bold;
font-size: 0.875rem;
}

.contact-content-required > .title > label::after {
position: absolute;
content: "-必須";
top: 0;
right: -40px;
font-size: 0.75rem;
color: #ee5454;
}

.wpcf7-not-valid-tip{
font-size: 0.875rem;
color: #ee5454;
}

select,input{
cursor: pointer;
}

.select-arrow{
position: relative;
}

.select-arrow::after{
position: absolute;
content: '';
border-top: 1px solid #222;
border-left: 1px solid #222;
width: 10px;
height: 10px;
top: 45%;
right: 20px;
transform:translateY(-45%) rotate(-135deg);
-webkit-transform:translateY(-45%) rotate(-135deg);
}

.contact-contents__submit {
margin: 40px auto 0;
text-align: center;
}

input[type="text"],input[type="email"],textarea,.contact-select {
appearance: none;
border: 1px solid rgba(0, 0, 0, 0.16);
border-radius: 0;
color: #222;
font-size: 0.75rem;
padding: 8px 16px ;
width: 100%;
box-sizing:border-box;
}

input[type="text"]:focus,input[type="email"]:hover,textarea:focus,textarea:hover,.contact-select:hover{
border: 1px solid #222;
box-shadow: none;
outline: none;
} 

input.contact-contents__btn {
appearance: none;
background-color: #0d2a67;
color: #fff;
cursor: pointer;
display: inline-block;
font-size: 0.875rem;
font-weight: bold;
padding: 1rem 2rem;
text-decoration: none;
letter-spacing: 0.5px;
transition: all 0.5s;
cursor: pointer;
min-width: 240px;
width: auto;
}

input.contact-contents__btn:hover {
background-color: #2c4986;
}

.contact_wrapper > p{
text-align: center!important;
font-size: 0.875rem;
}

.contact_wrapper > p a{
color: #021ec7!important;
text-decoration: 1px solid #021ec7;
}

.wpcf7-list-item{
margin: 0;
}

.wpcf7-spinner {
display: none !important;
}

.wpcf7 .wpcf7-submit:disabled {
background-color: #666;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
  border-color: #ee5454;
}

@media (max-width:499px) {
  .contact-content-required .input-text textarea{
  height:140px ;
}
input.contact-contents__btn {
  padding: 14px 0;
  width: 100%;
}
.contact-contents__submit {
  margin: 32px auto 0;
}
.contact-content-required{
  margin-bottom: 24px;
}
}

/*-------------------------------------------
固定ページ共通 page.php
-------------------------------------------*/
.page .wrapper{
max-width: 1100px;
margin: 0 auto 40px;
padding: 0 20px;
box-sizing: content-box;
}

.page .page-title {
box-sizing: border-box;
margin: 50px auto 50px;
text-align: left;
color: #0d2a67!important;
max-width: 1100px;
font-family: Palatino, Georgia ,yumincho,'yu mincho' ,serif;
font-size: 2rem;
}

.page.main p,
.page.main h2,
.page.main h3 {
color: #222;
}

a{
text-decoration: none;
color: #1A0DAB;
}

.ttl_font{
font-family: yumincho , 'Yu Mincho', serif;
}

.aligncenter{
Text-align:center;
}

@media (max-width:799px) {
.page .page-title {
  margin:  50px auto 32px;
}
}

@media (max-width:499px) {
.page .page-title{
  font-size:1.5rem ;
  text-align: center;
  margin:  40px auto 32px;
}
}

/*-------------------------------------------
固定ページ biography用カスタム
-------------------------------------------*/
.biography_img {
width: 400px;
margin-bottom: 24px!important;
}

.biography_wrapper h2{
font-family: Palatino, Georgia;
font-size: 2rem;
}

.biography_wrapper h3{
font-size: 1.125rem!important;
margin-bottom: 24px;
}

.biography_inner{
max-width: 664px;
margin: 0 auto;
box-sizing: border-box;
}

.p_wrapper{
margin-bottom: 64px;
}

@media (max-width:499px) {
.biography_img {
  width: 100%;
}
}


/*アコーディオン*/
.faq-button {
background: #eee;
padding: 12px;
color: #222;
text-align: center;
}

.faq-button:hover {
cursor: pointer;
}

.faq-content {
margin: 12px auto;
}

.faq-detail{
padding:12px;
}

.faq-content p{
padding: 12px 20px;
}

.center{
text-align: center;
}

/*
#wpadminbar{
  display: none;
}
*/
