@charset "UTF-8";
/********************************************************************************

common.css


********************************************************************************/
/*============================================================
 import
*============================================================*/

/*============================================================
 system
*============================================================*/
/* pc-sp display switch
---------------------------------------- */
.forPC {
    display: initial;
}
.forSP {
    display: none;
}

/*============================================================
 format
*============================================================*/
html {
    display: block;
    background-color: #f1f1f1;
}
body {
    width: 100%;
    font-family: 'Noto Sans JP';
    font-style: normal;
    font-weight: normal;
    font-size: 16px;
    line-height: 160%;
    color: #222222;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    padding: 36px 0 80px 0;
}
body.page-top {
    padding-bottom: 0;
}
main {
    width: 100%;
    min-height: 400px;
}
section {}

.inner {
    width: 100%;
    max-width: 1008px;
    padding: 0 24px;
    margin: 0 auto;
}
h1 {
    font-weight: bold;
    font-size: 24px;
    line-height: 140%;
    margin-bottom: 32px;
}
h2 {
    font-weight: bold;
    font-size: 20px;
    line-height: 140%;
    text-align: center;
    margin-bottom: 16px;
}
h3 {}
h4 {}

p {}
img {
    max-width: 100%;
    height: auto;
}
.img-box {
    line-height: 0;
    text-align: center;
}
span {
    font-weight: inherit;
}
a[href^="tel:"] {
    pointer-events: none;
}
strong {}
.attention {
    font-size: 12px;
    line-height: 160%;
    color: #F72323;
}
.notice {
	font-weight: bold;
	font-size: 24px;
	line-height: 140%;
	color: #1356AF;
}
.step-title {
    font-weight: bold;
    font-size: 12px;
    line-height: 25px;
    margin-bottom: 16px;
}
.step-title span {
    display: inline-block;
    width: 56px;
    font-weight: bold;
    font-size: 12px;
    line-height: 25px;
    color: #1356AF;
    background-color: #E6F0FD;
    text-align: center;
    margin-right: 12px;
}

/* scroll fade
---------------------------------------- */
/* .scroll-fade {
    opacity: 0;
    -webkit-transition: all 0.8s;
    -moz-transition: all 0.8s;
    -o-transition: all 0.8s;
    -ms-transition: all 0.8s;
    transition: all 0.8s;
    transform: translate(0, 50px);
}
.scroll-fade-on {
    opacity: 1;
    transform: translate(0, 0);
} */

/* form
---------------------------------------- */
input,
select,
textarea,
button {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 16px;
    -webkit-appearance: none;
}

input[type="radio"] {
    -webkit-appearance: radio;
    -moz-appearance: radio;
    appearance: radio;
    vertical-align: inherit;
}

input[type="checkbox"] {
    -webkit-appearance: checkbox;
    -moz-appearance: checkbox;
    appearance: checkbox;
    vertical-align: inherit;
}

input[type="text"],
input[type="tel"],
input[type="email"],
textarea,
select {
    display: block;
    width: 100%;
    height: 48px;
    background-color: #fff;
    border: solid 1px #545454;
    border-radius: 2px;
    padding: 10px 12px;
    box-sizing: border-box;
}

select {
    background-image: url(https://cic-utsunomiya.red-turtle.xyz/wp/wp-content/themes/cic-utsunomiya/assets/images/common/icon-form-select.svg);
    background-repeat: no-repeat;
    background-position: right 8px center;
    background-size: 8px auto;
}

textarea {
    padding: 10px 12px;
    height: 300px;
}

input::placeholder,
textarea::placeholder,
select::placeholder {
    color: #A6A6A6;
}

input:hover,
textarea:hover,
select:hover,
button:hover,
input:focus,
textarea:focus,
select:focus button:focus {
    outline: none;
}

input[type="text"]:hover,
input[type="tel"]:hover,
input[type="email"]:hover,
textarea:hover,
select:hover,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
textarea:focus,
select:focus {
    border: solid 1px #969696;
    border-radius: 2px;
}

input[type="checkbox"],
input[type="radio"] {
    margin: 0 8px 0 0;
    height: 20px;
    width: 20px;
    vertical-align: -4px;
}

button:hover,
input[type="submit"]:hover {
    cursor: pointer;
}

/*============================================================
 partsカスタム(本サイト専用パーツ追加)
*============================================================*/
/* LINEお問い合わせ専用 */
.parts-btn[data-name="line"] {
	background-color: #00B900;
}
.parts-btn[data-name="line"] a {
	text-align: left;
	padding-left: 96px;
	background-image: url(https://cic-utsunomiya.red-turtle.xyz/wp/wp-content/themes/cic-utsunomiya/assets/images/common/icon-btn-line.png);
	background-repeat: no-repeat;
	background-size: 56px;
	background-position: 8px center;
}
.parts-btn[data-name="line"]:hover {
    opacity: 0.8;
}
.parts-btn[data-name="line"]::after {
	background-color: transparent;
}
/* 無料相談専用 */
.parts-btn[data-name="contact"] {
	width: 160px;
	background-color: #1356AF;
}
/* お問い合わせ専用(s) */
.parts-btn[data-name="contact-s"] {
	width: 112px;
    height: 40px;
	background-color: #1356AF;
}
.parts-btn[data-name="contact-s"] a {
    line-height: 40px;
}
/* 条件選択STEP専用 */
.parts-btn[data-name="step"] {
	background-color: #fff;
    border: solid 2px #1356AF;
    margin: 0;
}
.parts-btn[data-name="step"]::after {
    background-color: #1356AF;
}
.parts-btn[data-name="step"] > * {
    color: #1356AF;
    font-size: 16px;
}
.parts-btn[data-name="step"] > *:hover {
    color: #fff;
}
.parts-btn[data-name="step"].btn-active {
    background-color: #1356AF;
}
.parts-btn[data-name="step"].btn-active > * {
    color: #fff;
}
/* googlemap専用 */
.parts-btn[data-name="map"] {
	width: 160px;
	background-color: #1356AF;
    margin: 0;
}
.parts-btn[data-name="map"] > * {
    color: #fff;
}
/* googlemap専用(s) */
.parts-btn[data-name="map-s"] {
	width: 160px;
    height: 40px;
	background-color: #fff;
}
.parts-btn[data-name="map-s"] > * {
    line-height: 40px;
    color: #1356AF;
}
.parts-btn[data-name="map-s"]::after {
    background-color: #f7f7f7;
}


/*============================================================
 ヘッダー
*============================================================*/
#site-header {
    background: #fff;
    border-bottom: solid 1px #C4C4C4;
    width: 100%;
}
#site-header .inner {
    width: 100%;
    max-width: unset;
    padding: 0 24px;
}
#site-header .site-description {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999999;
    background-color: #1356AF;
}
#site-header .site-description p {
    font-size: 12px;
    line-height: 36px;
    color: #fff;
}
#site-header .nav {
    padding: 8px 24px;
}
#site-header .nav .nav-block > * {
    display: inline-block;
    vertical-align: middle;
    margin: 0;
}
#site-header .nav .nav-left > *:not(:last-child) {
    margin-right: 16px;
}
#site-header .nav .nav-right > *:not(:first-child) {
    margin-left: 24px;
}
#site-header .nav .logo img {
    width: auto;
    height: 72px;
}
#site-header .nav .title {
    font-weight: bold;
    font-size: 20px;
    line-height: 140%;
}


/*============================================================
 パンくずリスト
*============================================================*/
/* TOPページでは非表示
---------------------------------------- */
.page-top #breadcrumb {
    display: none;
}

/* 詳細ページでは表示
---------------------------------------- */
#breadcrumb {
    padding: 24px 0 40px;
    font-size: 12px;
    line-height: 140%;
}

#breadcrumb ul {
    padding: 0;
    margin-bottom: 0;
}

#breadcrumb li {
    display: inline-block;
    padding: 0;
    font-size: 0;
}

#breadcrumb li > * {
    display: inline-block;
    font-size: 14px;
    line-height: 200%;
    text-decoration-line: underline;
    vertical-align: top;
}

#breadcrumb li:after {
    content: " ";
    display: inline-block;
    width: 16px;
    height: 28px;
    background-image: url(https://cic-utsunomiya.red-turtle.xyz/wp/wp-content/themes/cic-utsunomiya/assets/images/common/icon-arrow-bread.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 16px auto;
    margin: 0 12px;
    vertical-align: top;
}

#breadcrumb li:last-child > * {
    text-decoration-line: none;
}

#breadcrumb li:last-child::after {
    display: none;
}


/*============================================================
 コンテンツ共通
*============================================================*/
/* エリアスタイル
---------------------------------------- */
.section {
	margin-bottom: 56px;
}
/* カード型(単一)
---------------------------------------- */
.block-card {
	width: 100%;
	max-width: 720px;
	margin: 0 auto;
	background-color: #fff;
	padding: 24px;
    border: 4px solid #E9E9E9;
    border-radius: 4px;
}
.block-card .no-data-msg {
    font-size: 14px;
}

/* Pickup、閲覧履歴
---------------------------------------- */
/* common */
.block-room-list-card .item {
    display: block;
    width: 222px;
    background-color: #fff;
    border: solid 4px #E9E9E9;
    border-radius: 8px;
}
.block-room-list-card .item .item-img {
    padding-top: 75%;
    background-repeat: no-repeat;
    background-size: cover, 160px;
    background-position: center;
}
.block-room-list-card .item .item-info {
    padding: 12px 12px 24px 12px;
    position: relative;
}
.block-room-list-card .item .item-info > * {
    margin-bottom: 8px;
}
.block-room-list-card .item .item-info .item-tag {
    position: absolute;
    top: -32px;
    right: 0;
    background-color: rgba(0, 0, 0, 0.7);
    font-weight: bold;
    font-size: 16px;
    line-height: 32px;
    color: #fff;
    text-align: center;
    padding: 0 16px;
    height: 32px;
}
.block-room-list-card .item .item-info .item-tag span {
    font-size: 10px;
}
.block-room-list-card .item .item-info .item-name {
    font-weight: bold;
    font-size: 12px;
    line-height: 140%;
    margin-bottom: 8px;
    text-align: left;
}
.block-room-list-card .item .item-info .item-name::after {
    content: "";
    display: block;
    width: 32px;
    height: 1px;
    background-color: #CECECE;
    margin: 8px 0 0 0;
}
.block-room-list-card .item .item-info p {
    font-size: 10px;
    line-height: 140%;
    margin-bottom: 8px;
}

/* Pickup */
.sec-pickup {
    padding: 0 0 56px 0;
    margin-bottom: 0;
}

/* 閲覧履歴 */
.sec-browsing-history {
    padding: 40px 0;
    background-color: #fff;
    margin-bottom: 0;
}

/* 物件ブロック(建屋単位)
---------------------------------------- */
/* 詳細ページ共通 */
.building-type {
    width: 80px;
    font-weight: normal;
    font-size: 12px;
    line-height: 140%;
    color: #fff;
    background-color: #1356AF;
    padding: 4px 0;
    text-align: center;
    margin-right: 24px;
}
.building-name {
    text-align: left;
    width: calc(100% - 80px - 24px);
}
/* 建屋情報 */
.block-building {
    position: relative;
}
.block-building .icon-recommend {
    display: none;

    position: absolute;
    top: -40px;
    right: -40px;
}
.block-building .building-data {
    font-size: 12px;
    line-height: 140%;
    margin-bottom: 42px;
}
.block-building .building-data .notice {
    font-size: 16px;
    line-height: 180%;
}
.block-building .building-img {
    width: 48%;
    margin-right: 16px;
}
.block-building .building-info {
    width: calc(100% - 48% - 16px);
}
.block-building .building-info .building-addr {
    margin-bottom: 16px;
}
.block-building .building-info dl dt {
    font-weight: bold;
    margin-bottom: 4px;
}
.block-building .building-info dl dd {
    padding-bottom: 8px;
    border-bottom: solid 1px #C4C4C4;
    margin-bottom: 8px;
}

/* 部屋リスト */
.block-room-list {
}
.block-room-list .table-wrap {
    display: table;
    margin-bottom: 12px;
}
.block-room-list ul {
    display: table-row;
}
.block-room-list ul li {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-size: 12px;
    line-height: 140%;
}
.block-room-list ul li.check {
    width: 32px;
}
.block-room-list ul li.image {
    width: 80px;
}
.block-room-list ul li.rent {
    width: 88px;
}
.block-room-list ul li.deposit {
    width: 88px;
}
.block-room-list ul li.floor {
    width: 56px;
}
.block-room-list ul li.floor_plan {
    width: 88px;
}
.block-room-list ul li.link {
    width: 254px;
}

.block-room-list ul.table-h li {
    background-color: #E6F0FD;
    height: 32px;
    font-weight: bold;
}
.block-room-list ul.table-h li:not(:last-child) {
    border-right: solid 2px #fff;
}

.block-room-list ul.table-d {
    -webkit-transition: display 0.3s;
    -moz-transition: display 0.3s;
    -o-transition: display 0.3s;
    -ms-transition: display 0.3s;
    transition: display 0.3s;
}
.block-room-list ul.table-d.row-hidden {
    display: none;
}
.block-room-list ul.table-d li {
    border-bottom: solid 1px #CECECE;
    padding: 14px 0;
}
.block-room-list ul.table-d li.link > * {
    display: inline-block;
    vertical-align: middle;
    font-size: initial;
}
.block-room-list ul.table-d li.link .parts-btn {
    margin-right: 12px;
}
.block-room-list ul.table-d li.link .room-link {
    text-decoration: underline;
}
.block-room-list ul.table-d li.link .room-link::before {
    content: "";
    width: 4px;
    height: 12px;
    background-image: url(https://cic-utsunomiya.red-turtle.xyz/wp/wp-content/themes/cic-utsunomiya/assets/images/common/icon-arrow-link.svg);
    background-repeat: no-repeat;
    background-size: 4px auto;
    background-position: left center;
    display: inline-block;
    margin-right: 8px;
}
.block-room-list .btn-room-more {
    width: 100%;
}

/* 検索条件モーダル(共通)
---------------------------------------- */
/* 全体 */
.block-modal {
    display: none;
    width: 100%;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 500;
    background-color: rgb(34 34 34 / 80%);
    padding: 48px;
}
/* コンテンツ */
.block-modal .modal-content {
    width: 100%;
    height: 100%;
    max-width: 720px;
    margin: 0 auto;
    position: relative;
    z-index: 9999;
}
/* 閉じるボタン */
.block-modal .modal-content .modal-close {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 48px;
    height: 48px;
    border-radius: 4px;
    overflow: hidden;
}
.block-modal .modal-content .modal-close:hover {
    cursor: pointer;
}
/* 内容 */
.block-modal .modal-content .modal-inner {
    padding: 28px 24px 0 24px;
    background-color: #fff;
    /* 48(余白上) + 48(余白下) + 56(件数) + 24(件数余白上) + 56(検索ボタン) = 232 */
    max-height: calc(100vh - 232px);
    overflow-y: auto;
}
.block-modal .modal-content .modal-inner .parts-boxes[data-style="table"] .item {
    margin-bottom: 0;
}
.block-modal .modal-content .modal-inner .parts-boxes[data-style="table"] .item .label {
    margin-bottom: 16px;
}
.block-modal .modal-content .modal-inner .parts-boxes[data-style="table"] .item .group-wrap {
    border-bottom: solid 1px #d8d8d8;
    margin-bottom: 24px;
}
.block-modal .modal-content .modal-inner .parts-boxes[data-style="table"] .item .label-sub {
    font-weight: bold;
    font-size: 12px;
    line-height: 140%;
    margin-bottom: 16px;
}
.block-modal .modal-content .modal-inner .parts-boxes[data-style="table"] .item .data {
    padding: 0;
}
.block-modal .modal-content .modal-inner .parts-boxes[data-style="table"] .item .data > * {
    margin: 0 32px 24px 0;
}
.block-modal .modal-content .modal-inner .parts-boxes[data-style="table"] .item .data select {
    width: 164px;
    margin-right: 0;
}
.block-modal .modal-content .modal-inner .parts-boxes[data-style="table"] .item .data .label-partition {
    margin: 12px 16px 0 16px;
}
/* 検索結果 物件数 */
.block-modal .modal-content .modal-footer {
    background-color: #1C385C;
    color: #fff;
    position: relative;
    height: 56px;
    margin-bottom: 24px;
}
.block-modal .modal-content .modal-footer .total-cnt {
    position: absolute;
    top: 12px;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    text-align: center;
}
.block-modal .modal-content .modal-footer .total-cnt > * {
    display: inline-block;
    vertical-align: middle;
}
.block-modal .modal-content .modal-footer .total-cnt .label {
    font-weight: bold;
    font-size: 12px;
    line-height: 140%;
    margin-right: 32px;
}
.block-modal .modal-content .modal-footer .total-cnt .data {
    font-weight: bold;
    font-size: 24px;
    line-height: 140%;
    margin-right: 8px;
}
.block-modal .modal-content .modal-footer .total-cnt .unit {
    font-size: 12px;
    line-height: 140%;
}
.block-modal .modal-content .modal-footer .get-total-cnt {
    position: absolute;
    top: 20px;
    bottom: 0;
    right: 12px;
    font-size: 10px;
    line-height: 140%;
    text-decoration-line: underline;
}
.block-modal .modal-content .modal-footer .get-total-cnt:hover {
    cursor: pointer;
}
.block-modal .modal-content .modal-footer .get-total-cnt {
}
/* 検索ボタン */
.block-modal .modal-content .btn-search {
    width: 480px;
    max-width: 80%;
}

/* 検索条件モーダル(クイック条件)
---------------------------------------- */
#modal-quick .step-title {
    margin-bottom: 32px;
}

/* 地図・エリアから探す、検索条件モーダル(町の指定)共通
---------------------------------------- */
.select-town .list-items li {
    margin-bottom: 8px;
}
.select-town .list-items li  {
}
/* 地図・エリアから探す専用 */
.select-town br {
    display: none;
}
.select-town .area-name {
    font-weight: bold;
    margin-bottom: 12px;
}
.select-town .area-note {
    font-size: 12px;
    line-height: 140%;    margin-bottom: 16px;
}
.select-town .ctrl-items {
    padding-bottom: 8px;
    border-bottom: solid 1px #CECECE;
    margin-bottom: 8px;
}
/* 検索条件モーダル(町の指定)専用 */
.select-town .list-items.parts-boxes li  {
    width: 146px;
    margin-right: 4px;
}
.select-town .list-items.parts-boxes li input[type="checkbox"] {
    margin-right: 4px;
}

/* 物件お問い合わせ帯
---------------------------------------- */
#overlay-cta-contact {
	width: 100%;
	position: fixed;
	bottom: 0;
	left: 0;
    z-index: 100;
	background-color: #222222cc;
	backdrop-filter: blur(4px);
	margin-bottom: 0;
	padding: 12px 0;
	color: #fff;
}
#overlay-cta-contact .inner {
	max-width: 948px;
}
#overlay-cta-contact .item-info {
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 56px;
}
#overlay-cta-contact .item-info .check-cnt {
    font-weight: bold;
    font-size: 40px;
    line-height: 140%;
    margin-right: 8px;
    width: 48px;
    text-align: right;
}
#overlay-cta-contact .item-info .check-cnt-unit {
    font-size: 12px;
    line-height: 140%;
    margin-right: 48px;
    padding-top: 4px;
}
#overlay-cta-contact .item-info .catch span {
	font-weight: bold;
	font-size: 20px;
	line-height: 140%;
}
#overlay-cta-contact .item-btn .parts-btn {
	width: 296px;
}


/*============================================================
 コンテンツ　ページング
*============================================================*/
/* jqueryプラグイン　InfiniteScroll使用時
---------------------------------------- */
/* メッセージ */
.page-load-status {
    text-align: center;
}
button.view-more-button:hover {
    cursor: pointer;
}


/*============================================================
 Error
*============================================================*/
.page-system-error #sec-system-error {
    padding: 80px 0;
    text-align: center;
    background-color: #fff;
    border-radius: 4px;
}

.page-system-error #sec-system-error .system-error-num {
    font-weight: 900;
    font-size: 100px;
    line-height: 100%;
    letter-spacing: 0.04em;
    margin-bottom: 24px;
}

.page-system-error #sec-system-error .system-error-sts {
    font-weight: bold;
    font-size: 32px;
    line-height: 180%;
    margin-bottom: 24px;
}

.page-system-error #sec-system-error .system-error-lead {
    margin-bottom: 56px;
}

/*============================================================
 コンタクトフォーム共通
*============================================================*/
/* 基本(入力画面)
---------------------------------------- */
/* 入力、確認で切り替え */
.page-lower.page-contact .forCF7Input {
    display: initial;
}

.page-lower.page-contact .forCF7Confirm {
    display: none;
}

/* フォーム */
.page-lower.page-contact .form-items .form-item {
    margin-bottom: 32px;
}

.page-lower.page-contact .form-items .form-item:last-child {
    margin-bottom: 0;
}

.page-lower.page-contact .form-items .form-item .form-label {
    margin-bottom: 16px;
    font-weight: bold;
}

.page-lower.page-contact .form-items .form-item .form-label.require::after {
    content: "必須";
    display: inline-block;
    margin-left: 16px;
    background-color: #E2041A;
    font-size: 12px;
    line-height: 100%;
    color: #fff;
    padding: 6px 12px;
}

.page-lower.page-contact .form-items .form-item .item-short {
    width: 30%;
    margin-right: 5%;
}

.page-lower.page-contact .form-items .form-item .item-short:last-child {
    margin-right: 0;
}

.page-lower.page-contact .form-items .form-item .note {
    font-size: 12px;
    line-height: 200%;
}

/* 同意チェック、ボタン */
.page-lower.page-contact #sec-controls {
    text-align: center;
}

.page-lower.page-contact #sec-controls .acceptance {
    margin-bottom: 40px;
}

.page-lower.page-contact #sec-controls .acceptance input[name="acceptance-privacy"] {
    margin-right: 4px;
}

.page-lower.page-contact #sec-controls .acceptance a {
    text-decoration: underline;
}

.page-lower.page-contact #sec-controls .form-btns > p {
    display: none;
}

.page-lower.page-contact #sec-controls .form-btns .parts-btn {
    display: inline-block;
    margin: 0px 12px;
}

.page-lower.page-contact #sec-controls .form-btns .parts-btn > * {
    background-color: transparent;
}

/* 入力内容確認ボタン(同意チェック前) */
.page-lower.page-contact #sec-controls .btn-for-input {
    background-color: #CCCCCC;
    pointer-events: none;
}

.page-lower.page-contact #sec-controls .btn-for-input input {}

/* 入力内容確認ボタン(同意チェック後) */
.page-lower.page-contact #sec-controls.acceptance-checked .btn-for-input {
    background-color: #1F272F;
    pointer-events: auto;
}

.page-lower.page-contact #sec-controls.acceptance-checked .btn-for-input input {}

/* ボタン(入力画面) */
.page-lower.page-contact:not(.step-confirm) #sec-controls .btn-for-input {
    display: inline-block;
}

.page-lower.page-contact:not(.step-confirm) #sec-controls .btn-for-confirmed {
    display: none;
}

/* 確認画面
---------------------------------------- */
/* 入力、確認で切り替え */
.page-lower.page-contact.step-confirm .forCF7Input {
    display: none;
}

.page-lower.page-contact.step-confirm .forCF7Confirm {
    display: initial;
}

/* フォーム */
.page-lower.page-contact.step-confirm input[type="text"],
.page-lower.page-contact.step-confirm input[type="tel"],
.page-lower.page-contact.step-confirm input[type="email"],
.page-lower.page-contact.step-confirm textarea,
.page-lower.page-contact.step-confirm select {
    color: #1F272F;
    border: none;
    background-color: transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    opacity: 1;
}

.page-lower.page-contact.step-confirm input[type="text"],
.page-lower.page-contact.step-confirm input[type="tel"],
.page-lower.page-contact.step-confirm input[type="email"],
.page-lower.page-contact.step-confirm textarea,
.page-lower.page-contact.step-confirm select {
    padding: 0;
}

.page-lower.page-contact.step-confirm .form-items .form-item .form-label.require::after {
    display: none;
}

.page-lower.page-contact.step-confirm .form-items .form-item .item-short {
    width: 100%;
    margin-right: 0;
}

.page-lower.page-contact.step-confirm .form-items .form-item .item-short:first-child {
    margin-bottom: 32px;
}

/* ボタン */
.page-lower.page-contact.step-confirm #sec-controls .btn-for-input {
    display: none;
}

.page-lower.page-contact.step-confirm #sec-controls .btn-for-confirmed {
    display: inline-block;
}

.page-lower.page-contact.step-confirm #sec-controls .btn-for-confirmed {
    display: inline-block;
}

/* ボタン配下のajax-loaderの高さでボタン配置がずれるのでサイズ0にする */
.page-lower.page-contact.step-confirm #sec-controls .btn-for-confirmed .ajax-loader {
    width: 0;
    height: 0;
}

/* メッセージ
---------------------------------------- */
/* common */
.wpcf7 form .wpcf7-response-output {
    text-align: center;
    margin: 0 0 32px 0;
}

/* 入力エラー */
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
    border-color: #E2041A;
}

/* 送信完了(ページ遷移するので実質送信中として表示) */
.wpcf7 form.sent .wpcf7-response-output {}

/* 完了画面
---------------------------------------- */
.page-lower.page-contact-thanks #sec-message {
    margin-bottom: 40px;
}

.page-lower.page-contact-thanks #sec-message .message-en {
    font-weight: 900;
    font-size: 80px;
    line-height: 180%;
    letter-spacing: 0.04em;
}

.page-lower.page-contact-thanks #sec-message .message-jp {
    font-weight: 900;
    font-size: 56px;
    line-height: 180%;
    margin-bottom: 40px;
}

/*============================================================
 footer
*============================================================*/
#site-footer {
    color: #fff;
}
#site-footer .nav {
    background-color: #1C385C;
    text-align: center;
    padding: 24px 0;
}
#site-footer .nav .inner {
    position: relative;
}
#site-footer .nav .inner #pagetop {
    position: absolute;
    top: 30px;
    right: 0;
    width: 48px;
    height: 48px;
    background-color: #0C2442;
    border-radius: 4px;
    color: #fff;
    text-align: center;
    padding: 16px 0 0 0;
    background-image: url(https://cic-utsunomiya.red-turtle.xyz/wp/wp-content/themes/cic-utsunomiya/assets/images/common/icon-pagetop.svg);
    background-repeat: no-repeat;
    background-position: top 6px center;
    background-size: auto 6px;
    font-size: 10px;
    line-height: 120%;
}
#site-footer .nav .inner #pagetop:hover {
    cursor: pointer;
}
#site-footer .nav h2 {
    font-weight: bold;
    font-size: 16px;
    line-height: 140%;
    margin-bottom: 12px;
}
#site-footer .nav .addr {
    font-size: 12px;
    line-height: 140%;
    margin-bottom: 16px;
}
#site-footer .nav .parts-btn {
    width: 160px;
    height: 32px;
    background-color: #0C2442;
}
#site-footer .nav .parts-btn::after {
    background-color: #184781;
}
#site-footer .nav .parts-btn > * {
    font-weight: normal;
    font-size: 12px;
    line-height: 32px;
}
#site-footer .copyright {
    text-align: center;
    background-color: #1356AF;
    font-size: 12px;
    line-height: 140%;
    padding: 28px 24px;
}
