/*
Theme Name: Nガレージ 空港パーキング
Theme URI: https://ngarage.jp/
Description: 成田空港受け渡し駐車場「Nガレージ 空港パーキング」専用テーマ。旧サイト（静的HTML）の見た目をそのまま再現し、予約・お問い合わせは Contact Form 7 で受け付けます。有効化すると初回だけ固定ページ・メニュー・画像・フォームを自動で作成します。
Version: 1.0.4
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 7.4
Author: Nガレージ
Text Domain: ngarage
License: GPL-2.0-or-later
*/

/* ==========================================================================
   旧サイト stylesheet.css（そのまま）
   ========================================================================== */
* {
	margin: 0px;
	padding: 0px;
}
html {
	background-color: #09F;
}
body{
	font-family:'メイリオ','Meiryo','Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','Osaka','ＭＳ Ｐゴシック','MS PGothic',sans-serif;
	line-height : 170%;
	font-size : 90%;
	color: #333333;
	border-top: 3px solid #09F;
	background-color: #44B5FF;
}
#header {
	width: 100%;
	background-color: #FFF;
}
#headerinner {
	margin-right : auto;
	margin-left : auto;
	height: 110px;
	width: 950px;
	position: relative;
}
#headerleft {
	padding: 10px 0px 0px 0px;
	float: left;
	width: 600px;
	height: 90px;
}
#headerright {
	padding: 10px 0px 0px 0px;
	float: right;
	width: 350px;
	text-align: right;
	font-weight: bold;
}
#headerright a {
	color: #FFFFFF;
}
#topmenu {
	width : 100%;
	height: 45px;
	clear: both;
	border-bottom: 2px solid #06c;
	background-color: #09F;
}
#topmenuinner {
	margin-right : auto;
	margin-left : auto;
	width: 950px;
}
#toppageimage {
	width : 100%;
	clear: both;
	padding: 0px 0px 0px 0px;
	height: 300px;
	margin: 10px 0px;
}
#toppageimageinner {
	margin-right : auto;
	margin-left : auto;
	width: 950px;
}
#container {
	width: 950px;
	text-align: left;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	clear: both;
	border: 1px solid #f8e9da;
	margin-bottom: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	background-color:#FFF;
}
#main {
	padding: 15px 14px;
	clear: both;
}
#menu {
	float: left;
	width: 200px;
	padding: 0px 10px 0px 0px;
}
#right {
	float: right;
	width: 700px;
	padding: 0px 0px 0px 10px;
}
#bottommenu {
	text-align: right;
	clear: both;
	padding: 7px 10px;
	background-color: #ffffff;
	border-top: 1px solid #e9e9e9;
}
#footer {
	width : 100%;
	background-color: #09F;
	clear: both;
}
#footerinner {
	width: 950px;
	margin-right : auto;
	margin-left : auto;
	clear: both;
	padding: 10px 0px;
	color: #FFF;
}
#footerinner a {
	color: #FFF;
}
#footerleft {
	padding: 15px 10px;
	float: left;
	width: 270px;
}
#footerright {
	padding: 15px 10px;
	float: right;
	width: 630px;
	text-align: right;
}
#topmenu ul li {
	float: left;
	width: 157px;
	text-align: center;
	list-style: none;
	font-weight: bold;
	height: 45px;
	line-height: 45px;
	font-size: 17px;
	border-left: 1px solid #06c;
	background-color: #09F;
}
#topmenu ul li.right {
	float: left;
	text-align: center;
	list-style: none;
	height: 45px;
	line-height: 45px;
	width: 158px;
	border-right: 1px solid #06c;
}
#topmenu ul li a{
	text-decoration: none;
	display: block;
	color: #FF0;
}
#topmenu a:hover {
	background-color: #06C;
}
.menubar {
	color: #FFF;
	font-weight: bold;
	height: 35px;
	line-height: 35px;
	background-image: url(images/menu_bg.jpg);
	background-repeat: repeat-x;
	font-size: 110%;
	text-indent: 10px;
	margin: 5px 0px 5px 0px;
}
#menu ul {
	margin-bottom: 10px;
}
#menu ul li {
	font-weight: bold;
	text-indent: 25px;
	list-style-type: none;
	line-height: 35px;
	background-image: url(images/menu_li.jpg);
	background-repeat: no-repeat;
	background-position: 0px 0px;
	font-size: 100%;
	margin: 0px 0px 4px 0px;
}
#menu ul li a {
	color: #333333;
	text-decoration: none;
	display:block;
}
#menu ul li a:hover {
	color: #003399;
	text-decoration: underline;
	display:block;
}
a:link {
    color:#000066;
}
a:visited {
    color:#000066;
}
a:hover {
	color:#FF0000;
}
a:active {
	color:#FF0000;
}
.entry {
	margin-top: 5px;
	margin-bottom: 10px;
	text-indent: 45px;
	font-size: 120%;
	line-height: 35px;
	font-weight: bold;
	color: #333;
	background-image: url(images/entrybar.jpg);
	background-repeat: no-repeat;
	background-position: 0px 0px;
}
.subentry {
	margin-top: 5px;
	text-indent: 15px;
	margin-bottom: 10px;
	font-weight: bold;
	font-size: 110%;
	line-height: 30px;
	border-bottom: 2px solid #f60;
}
.thirdentry {
	color: #333333;
	font-weight: bold;
	font-size: 110%;
	margin-bottom: 10px;
	text-indent: 10px;
	line-height: 25px;
	border-left: 4px solid #f60;
}
.red {
	color: #F00;
}
.blue {
	color: #03C;
}
.bold {
	font-weight: bold;
}
.orange {
	color: #FF6600;
}
.big {
	font-size: 120%;
}
.xbig {
	font-size: 160%;
}
.small {
	font-size: 80%;
	line-height: 150%;
}
.tableborder{
    border-collapse: collapse;
    border: 1px solid #330000;
}
.tableborder td{
	border: 1px solid #ccc;
	padding: 4px;
}
.tableborder th{
	border: 1px solid #ccc;
	padding: 4px;
	background-color: #f4f4f4;
}
.tableborder_big{
    border-collapse: collapse;
    border: 1px solid #330000;
}
.tableborder_big td{
	border: 1px solid #ccc;
	padding: 8px;
}
.borderbox {
	padding: 10px 10px;
	background-color: #FFFFFF;
	border: 1px solid #e9e9e9;
	margin-bottom: 5px;
}
.borderbox_toppage {
	padding: 10px 10px;
	background-color: #F7F2EA;
	border: 1px solid #e9e9e9;
}
.merumaga {
	background-image: url(images/merumaga.png);
	background-repeat: no-repeat;
	background-position: 0px 0px;
	height: 55px;
	padding: 110px 0px 0px 0px;
	text-align: center;
}
.shindan {
	padding: 5px 5px;
	background-color: #F60;
	border-radius: 10px;        /* CSS3草案 */
	-webkit-border-radius: 10px;    /* Safari,Google Chrome用 */
	-moz-border-radius: 10px;   /* Firefox用 */
	color: #fff;
	font-weight: bold;
	text-align: center;
	width: 35%;
}
.shindan a {
	color: #fff;
	text-decoration: none;
}
.clear {
	clear: both;
}
.toppagemenu {
	margin-bottom: 5px;
}
.imageleft {
	padding: 0px 15px 15px 0px;
	float: left;
}
.imageright {
	padding: 0px 0px 15px 15px;
	float: right;
}
.imagebottom {
	padding: 0px 0px 10px 0px;
}
.toppage_borderbox {
	padding: 5px 10px;
	border: 1px solid #f4f4f4;
	float: left;
	width: 206px;
	margin: 0px 5px 10px 0px;
}
.clearfix:after { 
    content : "."; 
    display : block; 
    height : 0; 
    clear : both; 
    visibility : hidden; 
} 
* html .clearfix { 
    height : 1%; 
} 
.clear { 
    clear : both; 
} 
.p0{
	padding: 0;
}
.b0{
	border: none;
}

.center {
	text-align: center;
	margin-bottom: 1em;
}

section.in_box ul {
	padding-left: 2em;
}
section.in_box ul li {
	margin-bottom: 0.3em;
}

/* ==========================================================================
   WordPress 化で追加（旧サイトでは各ページ・部品の中に書かれていたスタイル）
   ========================================================================== */

/* 緊急のお知らせ（旧 pieces/emergency_informations.php） */
.emergencyInformation {
    color:white;
    background-color:#cf2e2e;
    padding: 1em;
    font-size: 1.25em;
}
.emergencyInformation p {
    text-align: center;
    margin: 0;
}
.emergencyInformation p span.full {
    font-size: 130%;
}
.emergencyInformation a {
    color: white;
    text-decoration: underline;
}

/* 確認画面（旧 goyoyaku_confirm.php / mail_kakunin.php） */
.ng-step-confirm .tbl_green th{
  text-align: right;
}
body.ng-confirming .ng-hide-on-confirm {
  display: none;
}

/* ご予約フォーム（旧 goyoyakumail.html） */
.ng-reserve .tableborder th {
    text-align: right;
}
#estimate_container{
  position: sticky;
  bottom: 0;
  background-color: white;
  color: black;
  border: solid 4px #44B5FF;
  line-height: normal;
  border-radius: 0.5em;
  padding: 0 1em;
}
#estimate_container span{
  display: block;
}
#estimate_container span.nocalc{
  line-height: 3em;
}
#estimate_container span.estimate {
  font-size: 1em;
  display: none;
}
#estimate_container span.estimate strong{
  font-size: 2em;
}
#estimate_container span.outtime{
  display: none;
}
#estimate_container span.wash{
  display: none;
}
#estimate_container span.hint{
  font-size: 0.8em;
  color: #990033;
  font-weight: bold;
}
form div.policy legend {
  font-weight: bold;
}
form div.policy > div.box {
    border: 1px solid silver;
    border-radius: 2px;
    margin-top: 0.5rem;
    padding: 0.5rem 1rem;
    margin-bottom: 0.5rem;
}
form div.policy div.title {
  font-weight: bold;
}
form div.policy div.body {
	margin-top:0;
	font-size: 0.7em;
	line-height: 1.3em;
}
form div.policy div.box:has(label.acceptance-check),
form div.policy div.box.ng-acceptance {
	margin-top: 1.5rem;
}
form div.policy label.acceptance-check {
	display: inline;
}

/* Contact Form 7 の既定スタイルを旧フォームの見た目に合わせる */
.ng-form .wpcf7-list-item {
	display: inline;
	margin: 0;
}
.ng-form .wpcf7-list-item-label::before,
.ng-form .wpcf7-list-item-label::after {
	content: none;
}
.ng-form .wpcf7-not-valid-tip {
	font-size: 90%;
	color: #F00;
	font-weight: bold;
}
.ng-form .wpcf7-response-output {
	margin: 1em 0;
	padding: 0.5em 1em;
}
.ng-form .wpcf7-spinner {
	vertical-align: middle;
}
/* 確認画面のボタン：認証ウィジェット（Turnstile のプラグインが「送信」の直前に差し込む）を上に、その下に［戻る］［送信］を横並び */
.ng-confirm-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 8px;
}
.ng-confirm-actions--center {
	justify-content: center;
}
/* 送信中マーク（普段は見えない）が場所を取って中央寄せがずれないよう、幅を打ち消す（右側にはみ出して表示される） */
.ng-confirm-actions .wpcf7-spinner {
	margin: 0 -32px 0 0;
}
.ng-confirm-actions > br,
.ng-confirm-actions .cf-turnstile-br {
	display: none;
}
.ng-confirm-actions > .cf7-cf-turnstile {
	order: -1;
	flex: 0 0 100%;
	margin: 0 0 4px !important;
}
.ng-confirm-actions--center > .cf7-cf-turnstile {
	display: flex;
	justify-content: center;
}
.ng-errors {
	color: #F00;
	font-weight: bold;
	border: 2px solid #F00;
	padding: 0.5em 1em;
	margin-bottom: 1em;
}
.ng-errors p {
	margin: 0;
}
.ng-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

/* ==========================================================================
   NPP（料金表示プラグイン）：料金表の「12/19以降のご入庫」の列と、繁忙期料金カレンダー（inc/npp.php）
   ========================================================================== */
.ng-npp-new:has(.npp-switch[hidden]) {
	display: none;
}
.ng-npp-new {
	color: #F00;
}
/* 列が3つのあいだは、表を幅いっぱいにして、金額を折り返さない */
.tableborder_big:has(.ng-npp-new .npp-switch:not([hidden])) {
	width: 100%;
}
.tableborder_big:has(.ng-npp-new .npp-switch:not([hidden])) td {
	white-space: nowrap;
}
.ng-npp-sub {
	font-size: 60%;
}
.ng-npp-calendar {
	margin: 10px 0 20px;
}
