﻿@charset "utf-8";
/*--------------------------------
* Template.css
* - - - - - - - - - - - -
* Template Block
*  + Wrapper
*  + Header
*  + Footer
* Common Parts
--------------------------------*/

@font-face 
{
    font-family: 'NotoSansJP';
    src: url(../font/NotoSansJP-Regular.ttf) format('truetype');
}

html {
	background-color:#F0F0F0;
	font-family:'NotoSansJP';
}

body {
	margin:0;
	padding:0;
	font-size:16px;
	color:#3F3F3F;
	text-align:center;
	background-color:#F0F0F0;
}

a:link{
    color: #3F3F3F;
	text-decoration:none;
}

a:hover {
	text-decoration:none;	
}


/*===================================
  Template Block
===================================*/

.allWrapper {
	width:1080px;
	margin:0 auto;
	padding:0;
	text-align:left;
}

/* Header
-----------------------------------*/
.headerMenu{
	width: 1080px;
	margin: 0 auto;
}

.headerMenu ul 
{
  /*margin: 0 auto 80px;*/
    margin: 0 auto 80px;
	padding:12px 36px;
	background-color: White;
	border-radius: 8px;
	display: flex;
    flex-direction: row;
	justify-content: flex-end;
	align-items: center;
	width: max-content;
	float: right;
}
.headerMenu ul li {
	display:inline;
	margin:0 1em 0 0;
	padding:0 0 0 17px;
}

.headerMenu ul li a 
{
    color:#1C8D61;
                        
}

.header {
	height:70px;
	    padding-bottom: 20px;
}

.header h1,
.header a.siteId{
	display:block;
	float:left;
	width:208px;
	height:41px;
	margin:40px 0 40px 5px;
	/*margin: 40px 0 0 5px;*/
	text-indent:-9999px;
	background:url(../images/siteId.gif) no-repeat 0 0;
}

.header .siteIdNoLink{
    display: block;
    /* float: left; */
    width: 208px;
    height: 41px;
    margin: 40px 0;
    text-indent: -9999px;
    background: url(../images/siteId.gif) no-repeat 0 0;
}

/*Footer
-----------------------------------*/

.footer {
	/*margin:30px 0 0;*/
	text-align:center;
	font-size:95%;
}

.footer .footerInfo {
	border-top:1px solid #ccc;
	margin:30px 0 30px;
	padding:20px 0 0;
	color:#666;
	line-height:1.6;
}

.footer .footerInfo a {
	color:#3F3F3F;
	text-decoration:none;
}

.footer .footerInfo #Copyright{
	color:#777777;
	font-size:10px;
}

/*===================================
  Common Parts
===================================*/

a img {
	border-style:none;	
}

.mainContents p,
.mainContents li,
.mainContents dt,
.mainContents dl{
	line-height:1.6em;
}

.toTop {
	text-align:right;
}

.toTop a {
    background: url(../images/pageTop.gif) no-repeat 0;
    height: 60px;
    width: 50px;
    display: inline-block;
        margin: 15px;
            text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}


/*ClearFix ------------------------

.clearfix:after{
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
	font-size: 0;
}*/
.clearfix{
	display:inline-block;
	min-height:1%;  /* for IE 7*/
}
/* Hides from IE-mac */
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* End hide from IE-mac */

hr {
	visibility:hidden;
	clear:both;
	height:1em;
	border-style:none;
}

strong,em {
	font-weight:bold;	
}

.section {
	margin-bottom:40px;
	width: 100%;
	/zoom:1;
}

.bodyblock {
	margin-left:40px;
	margin-right:40px;
}

.glayblock {
	margin: 40px;
	padding:20px;
	/*background-color:#FFF5F5;*/
	border:1px solid #E0E0E0;
	border-radius:10px;
}

.categoryblock {
	clear:both;
	margin-top:20px;
	margin-left:20px;
	margin-right:20px;
	padding:20px;
	overflow:hidden;
}

.categoryToiawase {
	clear:both;
	margin:20px;
	padding:5px;
	overflow:hidden;
	background-color:Silver;
}

.categoryMonkaToiawase {
	clear:both;
	margin:10px;
	overflow:hidden;
}

.commonblock {
	clear:both;
	margin-left:20px;
	margin-right:20px;
	border:1px solid #E0E0E0;
	padding:20px;
}

.telLarge {
	font-size:300%;
	font-weight:bold;
	font-family:Arial, Helvetica, sans-serif;
}

.line_solid {
	border-style:solid;
	border-color:Silver;
	border-width:2px;
}
.GreenColor {
	color:#1C8D61;
	font-weight:600;
}



/* Forms
-----------------------------------------*/

input.x-short {
    width:100px;
	height: 50px;
	border-radius: 10px;
	border: 1px solid #E0E0E0;
	padding: 0 0 0 10px;
}
input.short {
	width:100px;
	height: 50px;
	border-radius: 10px;
	border: 1px solid #E0E0E0;
	padding: 0 0 0 10px;
}

input.middle {
	width: 200px;
	height: 50px;
	border-radius: 10px;
	border: 1px solid #E0E0E0;
	padding: 0 0 0 10px;
}

input.long {
	width:323px;
	height: 50px;
	border-radius: 10px;
	border: 1px solid #E0E0E0;	
	padding: 0 0 0 10px;
}

label {
	margin-right:1em;
	line-height:2.5;
	display:inline-block;
}

label input {	/* for toggle */
	margin-right:5px;
}

input[type="checkbox"] 
{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 20px;
	height: 20px;
	opacity: 1;
	border-radius: 5px;
	border-width: 1.75px;
	border: 1.75px solid #E0E0E0;
	margin-right: 8px; 
	vertical-align: middle;
	cursor: pointer;
	background-color: #fff;
	position: relative;
}

/* チェックボックス選択時 */
input[type="checkbox"]:checked {
	background-color: #1C8D61;
	border-color: #1C8D61;
}

/* チェックボックス選択したままの時 */
input[type="checkbox"]:checked:disabled {
	background-color: #777777;
	border-color: #777777;
}

/* チェックマーク */
input[type="checkbox"]:checked::after 
{
	content: '';
	position: absolute;
	top: 2px;
	left: 5px;
	width: 5px;
	height: 9px;
	border: solid #fff;
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}

input[type="checkbox"] + label {
	opacity: 1;
	vertical-align: middle;
	cursor: pointer;
	margin-right: 15px;
	position: relative;
}

/* ラジオボタン */
input[type="radio"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 20px;
    height: 20px;
    opacity: 1;
    border-radius: 50%;
    border: 1.75px solid #E0E0E0;
    margin-right: 8px;
    vertical-align: middle;
    cursor: pointer;
    background-color: #fff;
    position: relative;
}

input[type="radio"]:checked::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background-color: #1C8D61;
}

select {
    color:#3F3F3F;
    font-size:15px;

    padding:12px 10px;

    border-radius:8px;
    border:1px solid #E0E0E0;
}

.mainContents td p {
	display:inline-block;	
}

td img {
	vertical-align:middle;	
}

.mainContents p.note {
	margin-top:4px;
	font-size:12px;
	font-weight:normal;
	color:#777777;
}

.defForm .categoryblock {
	margin-bottom:20px;
}

.defForm .glayblock {
	padding:25px;
	margin-bottom:20px;
	overflow:hidden;
	zoom:1;
}

.defForm div.last {
	margin-bottom:0;	
}

.defForm h3 {
	margin:0 0 25px;
	padding:0 4px 0px 23px;
	position:relative;
	font-size:130%;
	line-height:1.1;
	font-weight:bold;
}

.defForm h4 {
	margin:0 0 25px;
	padding:0 4px 0px 23px;
	position:relative;
	font-size:130%;
	line-height:1.1;
	font-weight:bold;
}

.defForm table {
	margin:-20px 0 0 0;
	background-color:transparent;
}

.defForm th {
	width:184px;
	padding:20px 0;
	font-weight:bold;
	vertical-align:top;
	border-bottom: 1px solid #E0E0E0;
}

.defForm td {
	padding:20px 0;
	vertical-align:top;
	border-bottom: 1px solid #E0E0E0;
}

.defForm td.nameTd {
	width:60px;
	white-space:nowrap;
}

.defForm td.nameInputTd {
}

.defForm td.nameAftertd {
	padding-left:60px;	
}

.defForm tr.last th,
.defForm tr.last td {
	padding-bottom:0;
	border-bottom-style:none;
}

.defForm th h3{
	margin-bottom:0;
}

.mainContents .defForm p.first {
	margin-top:0;
}

.mainContents .defForm p.last {
	margin-bottom:0;
}

th span.label {
	margin-right:0;
	display:block;
	padding:0 0 0 16px;
	font-weight:bold;
	border-left:5px solid #1C8D61;
	height:20px;
	width:570px;
}

.sendBtns {
	text-align:center;
	padding:50px 0 0;
	font-size:0;
	clear:both;
}

.ReturnBtn {
	text-align:left;
    margin-left: 20px;
}

.sendBtns img {
	margin:0 5px;	
}

.sendBtns .img {
	margin:0 5px;	
}

.sendBtns .anotherCatFirst {
	margin-left:10px;	
}

.sendBtns .WebReserve {
    margin-top: 10px;
    margin-left: 10px;
}

.displayOnlyKenpos,
br.displayOnlyKenpos {
	display:none;
}
/* End Message --------------------------------------*/
/*.annaiMsg {
	width:748px;
	margin:0 100px;
	min-height:10px;
	height:auto!important;
	height:10px;
	font-weight:bold;
	font-size: 120%;
	/zoom:1;
}*/

.jizenAnnaiMsg {
	width: 712px;
	height: 29px;
	margin: 0 0;
	font-size: 16px;
	/zoom: 1;
}

.annaiMsg:after,
.jizenAnnaiMsg:after,
.sendCompleteMsg:after{
	content : '';
	display : block;
	clear : both;
	height:0;
}

.mainContents .annaiMsg p,
.mainContents .jizenAnnaiMsg p {
	margin: 16px 0px;
	text-align: center;
}

hr.sep_border {
	visibility:visible;
	margin:20px 0;
	height:0;
	color:transparent;
	border-style:none;
	border-bottom:1px solid #CCC;
}

.confirmInfo {
	background-color:#FFF5F5;
	border:none;
	line-height:2.5em;
	padding:20px;
}

/* Privacy Policy -----------------------------------*/

.mainContents .privacyPolicy {
	margin-top:25px;
	padding:20px 0 0;	
	border-radius: 8px;
}

.privacyPolicy div h1 {
	margin:1.5em 0 0.8em;
	padding:0;
	font-weight:bold;
	font-size:120%;
	border-bottom-style:none;
}

body .mainContents .privacyPolicy h3 {
	margin:0;
	border-bottom:1px solid #E0E0E0;
	background-image:none;
	padding-left:0;		
}

body .mainContents .privacyPolicy h3 span {
	display:block;
	padding:0 4px 14px 43px;
	font-size:110%;
	line-height:1.1;
	font-weight:bold;	
	background: url(../images/member/Vector.gif) no-repeat 20px 0.3em;
}

.privacyPolicy div {
	padding:10px 20px;
	height:15em;
	overflow-y:scroll;
}

.privacyPolicy div h2 {
	margin:1.5em 0 0.8em;
	padding:0;
	font-weight:bold;
	font-size:110%;
	border-bottom-style:none;
}

body .mainContents .privacyPolicy div h3 {
	margin:1.5em 0 0.8em;
	padding:0;
	font-weight:bold;
	font-size:110%;
	border-bottom-style:none;
}

.mainContents .privacyPolicy div p,
.privacyPolicy ol{
	line-height:1.5;
	margin-bottom:2em;
}

.mainContents .privacyPolicy div p.align_right {
	text-align:right;
	margin-bottom:1em;
}

.privacyPolicy ol li{
	margin:0 0 5px 1.5em;
	padding-left:1em;
	list-style-type:decimal;	
}

.privacyPolicy ol li li {
	list-style-type:lower-roman
}

.privacyPolicy p.blackbox {
	text-align:center;
}

.privacyPolicy p.blackbox span {
	display:block;
	width:300px;
	margin:0px auto;
	padding:8px;
	border:1px solid #333;
	text-align:left;
}

.privacyPolicy table {
	margin-top:0;	
}

.privacyPolicy table th,
.privacyPolicy table td {
	border:1px solid #333;
	padding:5px;
}

/* PrintOutBtn -----------------------------------*/
.printOutBtn {
	display:none;	
}

body.js-enabled .printOutBtn {
	display:inline-block;
}

@media print {
	
	* {
		
	}
	
	* html body { 
		zoom: 0.7;
	}
	
	* html body .mainContents {
		float:none!important;
	}
	
	*:first-child+html { 
		zoom: 0.7;
	}
	
	*:first-child+html * .mainContents {
		float:none!important;
	}
		
	.privacyPolicy {
		display:none;
	}

}

/* ?????a???\ -----------------------------------*/

.seirekiwarekiheader {	
	color:#777777;
	text-align:center;
	font-size:180%;
	font-weight:bold;
}	

.seirekiwareki {	
	font-size:160%;
	padding-bottom: 40px;
}	

.seiwareheader {	
	color:#FFFFFF;
	font-weight:bold;
	background-color:#1C8D61;
}	

.seiwaretr {	
	background-color:#E4F1EC;
}	

.seiwaretable
{
    margin: 0 auto;
}


/* エラーメッセージ（インライン表示） -----------------------------------*/
.tooltipTable {
display: inline-flex !important;
align-items: center !important;
gap: 6px !important;
margin-left: 8px !important;
padding: 0 !important;
border: none !important;
border-collapse: collapse !important;
border-spacing: 0 !important;
text-align: left !important;
position: static !important;
vertical-align: middle !important;
}

.tooltipTd {
display: inline-flex !important;
align-items: center !important;
gap: 6px !important;
color: #e60012 !important;
font-size: 90% !important;
background-color: transparent !important;
white-space: nowrap !important;
margin: 0 !important;
padding: 0 !important;
text-align: left !important;
line-height: 1.2 !important;
    position: relative;
        top: -5px;
}

.tooltipAngle {
position: relative !important;
display: inline-block !important;
width: 14px !important;
height: 14px !important;
border: 1px solid #e60012 !important;
border-radius: 50% !important;
vertical-align: middle !important;
flex-shrink: 0 !important;
left: auto !important;
bottom: auto !important;
}

.tooltipAngleInner {
position: absolute !important;
top: 50% !important;
left: 50% !important;
transform: translate(-50%, -56%) !important;
color: #e60012 !important;
font-weight: bold !important;
font-size: 11px !important;
line-height: 1 !important;
}

.tooltipAngleInner::before {
content: '!' !important;
}

/* IE6 用フォールバック（レガシー対応維持） */
* html .tooltipAngle {
border-right-color: #e60012;
bottom: auto;
}
