/*
Theme Name: XWRITE child
Version: 1.0.0
Template: xwrite
*/

/* TOPページ */
header.articleHeader { display: none; }

@media (min-width: 1080px) {
    .mainVisual .item__info--caption {
        font-size: 4.4rem!important;
    }
	.mainVisual .item__info--text {
		font-size: 1.4rem;
	}
	
}
.mainVisual .item__info--caption {
    font-size: 2.2rem;
    text-align: center;
	margin-bottom: 20px;
}

@media (min-width: 768px) {
    .mainVisual .item__info--text {
        margin: 15px 0 0;
        font-size: inherit;
		margin-top: 0px!important;
    }
}
@media (min-width: 992px) {
    .mainVisual .item__info--text {
        font-size: 125%;
		margin-top: 18px;
    }
}

.header .siteInfo .siteInfo__logo img {
    min-height: 32px;
}
@media (max-width: 649.98px) {
    .header-fix .siteInfo .siteInfo__logo {
        min-height: 32px;
    }
}

.mainVisual .item__info--link .btn {
    padding: .8em 1.4em;
    border-radius: 5px;
}
.xw-page-article-list .page-article__link.type-button-outline.page-article__link--rounded, .xw-page-article-list .page-article__link.type-button.page-article__link--rounded {
    border-radius: 5px;
    width: 100%;
    font-size: 1.0rem;
    padding: 16px;
}
@media (min-width: 650) {
    .xw-page-article-list.type-card .page-article__link.type-button, .xw-page-article-list.type-card .page-article__link.type-button-outline {
        font-size: 1.6rem;
        width: 200px;
        padding: 16px;
    }
}
.header .sub-menu, .header-fix .sub-menu {
    width: auto;
}
.footer {
    background: #fff;
}
/* aboutページ */
.mainVisual.title-layout-contents-top .item__overlay {
    background: #a1a1a1;
    opacity: none;
}
.mainVisual.title-layout-contents-top .item .item__info {
    min-height: 25rem;
}
@media (min-width: 992px) {
    .mainVisual.title-layout-contents-top .item .item__info {
        min-height: 55rem;
        transition: auto;
    }
}

/* ・・・・・・・・・・・・・・・・・・・・
お問い合わせフォームの装飾
・・・・・・・・・・・・・・・・・・・・ */
/* フォーム全体の枠 */
.Form {
  max-width: ;
  margin: 0 auto;
  padding: 0px 40px 40px;
  border: 1px solid #ddd;
  border-radius: 8px;
  background: #fafafa;
  box-sizing: border-box;
}

/* 各項目の余白 */
.Form-Item {
  margin-bottom: 24px;
}

/* ラベル */
.Form-Item-Label {
  margin-bottom: 8px;
  font-weight: bold;
  font-size: 16px;
  color: #333;
}

/* 必須マーク */
.Form-Item-Label-Required {
  display: inline-block;
  margin-right: 4px;
  padding: 2px 6px;
  font-size: 12px;
  background: #e74c3c;
  color: #fff;
  border-radius: 3px;
}

/* input、textarea の共通装飾 */
.Form input[type="text"],
.Form input[type="email"],
.Form input[type="tel"],
.Form textarea {
  width: 100%;
  padding: 12px 14px;
  font-size: 15px;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
  background: #fff;
}

.Form input[type="text"]:focus,
.Form input[type="email"]:focus,
.Form input[type="tel"]:focus,
.Form textarea:focus {
  border-color: #0073aa;
  outline: none;
}

/* textarea は高さを固定しておく */
.Form textarea {
  height: 160px;
  resize: vertical;
}

/* ラジオ・チェックボックス項目の調整 */
.Form .wpcf7-radio,
.Form .wpcf7-checkbox {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.Form .wpcf7-radio label,
.Form .wpcf7-checkbox label {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 15px;
  cursor: pointer;
}

/* ファイル添付input */
.Form input[type="file"] {
  font-size: 14px;
}

/* 送信ボタン */
.button-wrap {
  text-align: center;
  margin-top: 40px;
}

.confirm_button {
  background: #0073aa;
  color: #fff;
  font-size: 16px;
  padding: 14px 40px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: background .3s;
}

.confirm_button:hover:not([disabled]) {
  background: #005f8d;
}

.confirm_button:disabled {
  background: #ccc;
  cursor: default;
}

.wpcf7-submit {
  background: #0073aa;
  color: #fff;
  font-size: 16px;
  padding: 14px 40px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: background .3s;
}
.back_button {
  background: #bdbdbd;
  color: #fff;
  font-size: 16px;
  padding: 14px 40px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: background .3s;
}
.cf-turnstile {
	text-align: center;
}
/* ・・・・・・・・・・・・・・・・・・・・
ユーキリティ
・・・・・・・・・・・・・・・・・・・・ */
/* 非表示 */
.display-none {
	display: none;
}

.pt0 {
	padding-top: 0;
}
.pb0 {
	padding-bottom: 0;
}
.mt0 {
	margin-top: 0;
}
.w-30p > table >  tbody >  tr > td:first-child {
	width: 30% !important;
}

.header-fix .gNavList > .menu-item > a > .menu-item-title, .header.is-pc-left .gNavList > .menu-item > a > .menu-item-title {
    font-size: 17px;
    font-weight: 500;
}
@media (min-width: 649px) {
.sponly {
	display:none;
}
}
@media (max-width: 649.98px) {
    .mainVisual .item__info--text {
        text-align: center;
        font-size: 1.6rem;
        margin-top: 0px;
    }
}
/*
.mainVisual.is-transparent .item__info {
    font-family: "Noto Serif JP", "Hiragino Mincho ProN", serif;
}
*/
.fs75 { font-size: 75%; }

/* 860px ～ 990px の間だけ適用 */
@media screen and (min-width: 1031px) and (max-width: 1080px){
    .mainVisual .item__info--caption {
        font-size: 3.6rem !important;
	}
	.mainVisual .item__info--text { 
    margin-top: 50px !important; 
  }
}

/* 860px ～ 990px の間だけ適用 */
@media screen and (min-width: 992px) and (max-width: 1030px){
    .mainVisual .item__info--text { 
    margin-top: 50px !important; 
  }
}
/* 860px ～ 990px の間だけ適用 */
@media screen and (min-width: 861px) and (max-width: 990px){
    .mainVisual .item__info--text { 
    margin-top: 30px !important; 
  }
	.mainVisual .item__info--caption {
		font-size: 2.4rem;
	}
}
@media screen and (min-width: 772px) and (max-width: 860px) {
    .mainVisual .item__info--text { 
        margin-top: 46px !important;
        font-size: 1.2rem;
  }
	.mainVisual .item__info--caption {
	    font-size: 2.0rem;
    }
}
@media screen and (min-width: 768px) and (max-width: 771px) {
    .mainVisual .item__info--text { 
    margin-top: 50px !important;
  }
	.mainVisual .item__info--caption {
    margin-bottom: 30px;
	font-size: 2.0rem;
    }
}
@media screen and (min-width: 650px) and (max-width: 767px) {
	.mainVisual .item__info--text {
	font-size: 1.2rem;
    }
	.mainVisual .item__info--caption {
    margin-bottom: 0px;
	font-size: 2.0rem;
    }
}
@media screen and (min-width: 540px) and (max-width: 650px) {
    .mainVisual .item__info--text { 
	font-size: 1.2rem;
    margin-top: 0px !important;
  }
	.mainVisual .item__info--caption {
	font-size: 1.8rem;
    }
}
@media screen and (min-width: 430px) and (max-width: 540px) {
    .mainVisual .item__info--text { 
	font-size: 1.2rem;
  }
	.mainVisual .item__info--caption {
	font-size: 2.0rem;
    }
}
@media screen and (min-width: 374px) and (max-width: 429px) {
    .mainVisual .item__info--text { 
    margin-top: 0px !important;
	font-size: 1.2rem;
  }
	.mainVisual .item__info--caption {
	font-size: 1.8rem;
    }
}
@media (max-width: 373px) {
    .mainVisual .item__info--text { 
	font-size: 1.2rem;
  }
	.mainVisual .item__info--caption {
	margin-top: 10px !important;
	margin-bottom: 10px;
	font-size: 1.6rem;
    }	
}