﻿@charset "UTF-8";

/*----------------------------------------------------
	Reset
----------------------------------------------------*/

* {
	margin:0;
	padding:0;
}

html {
	position: relative;
	overflow-x: hidden;
}

[data-data] {
	border:none!important;
	pointer-events: none;
}

body {
	color: #333;
	font: 14px 'メイリオ',Meiryo,Osaka,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック','MS P Gothic',sans-serif;
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
	background-color: #ffffff;
	word-wrap: break-word;
	word-break: break-word;
	position: relative;
	overflow-x: hidden;
}

table {
	font-size: inherit;
}

img {
	border: none;
	margin: 0;
	padding: 0;
	image-rendering: -webkit-optimize-contrast;
}

table, th, td {
	margin:0;
	padding:0;
}

ul, ol {
	margin:0;
	padding:0;
	list-style-type:none;
}

textarea,input {
	font:100% 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,Osaka,'ＭＳ Ｐゴシック','MS P Gothic',sans-serif;
	outline: 0;
	max-width: 100%;
}
input::-moz-focus-inner, button::-moz-focus-inner {
	border: 0;
}

input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}
input[type="number"] {
	-moz-appearance:textfield;
}


a {
	color:#273589;
	text-decoration:none;
	outline:none;
	cursor: pointer;
}

a:link {
	color:#273589;
	text-decoration:none;
	outline:none;
}

a:hover {
	color:#273589;
	text-decoration:underline;
	outline:none;
}

h1, h2, h3 {
	font-size:100% !important;
}

#contents p {
	word-break:break-all;
}

.hover:hover {
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
	text-decoration: none;
	cursor: pointer
}
.hover:hover a {
	text-decoration: none;
}

.nomb {
	margin-bottom: 0!important;
}

.focus {
	background-color: #ffffca !important;
	border: 1px solid #eea34a !important;
}

.disable {
	pointer-events: none;
	cursor: default;
}

#loading {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	display: none;
	width: 100%;
	height: 100%;
	background-color: #fff;
	filter:alpha(opacity=60);
	-moz-opacity: 0.6;
	opacity: 0.6;
	z-index: 15;
	text-align: center;
}

#loading img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

#info_4d {
	display: none;
}

.overflow-hidden {
	width: 100%;
	overflow: hidden;
	position: fixed;
}

.hideset {
	display:none;
}

.inner_one {
	margin: 0 auto!important;
	float: none!important;
}

.inner_two {
	width: 46%!important;
	margin: 0 2% 0 2%!important;
	float: left!important;
}

input.imeOff {
	ime-mode: inactive !important;
}


* {
	-webkit-box-sizing : border-box ;
	-moz-box-sizing : border-box ;
	box-sizing : border-box ;
}



/*----------------------------------------------------
	clearfix
---------------------------------------------------*/
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}



/*----------------------------------------------------
	indent
----------------------------------------------------*/
.top0 { margin-top:0 !important; }
.top5 { margin-top:5px !important; }
.top10 { margin-top:10px !important; }
.top15 { margin-top:15px !important; }
.top20 { margin-top:20px !important; }
.top30 { margin-top:30px !important; }
.top40 { margin-top:40px !important; }
.top50 { margin-top:50px !important; }
.btm0 { margin-bottom:0 !important; }
.btm5 { margin-bottom:5px !important; }
.btm10 { margin-bottom:10px !important; }
.btm15 { margin-bottom:15px !important; }
.btm20 { margin-bottom:20px !important; }
.btm30 { margin-bottom:30px !important; }
.btm40 { margin-bottom:40px !important; }
.btm50 { margin-bottom:50px !important; }



/*----------------------------------------------------
	font-deco
----------------------------------------------------*/
.caution { color: #b50106; }
.red { color: #ff0000; }
.orange { color: #E87400; }
.blue { color: #005ba2; }
.green { color: #006600; }
.brown { color: #B25900; }
.bold { font-weight: bold; }

.btmDot { border-bottom: #bbb 1px dashed; margin-bottom: 5px; }
.btmline { border-bottom: #bbb 1px solid; margin-bottom: 5px; }
.btmdoubleline { border-bottom: #bbb 4px double; margin-bottom: 5px; }
.aroundline { border: #bbb 1px solid; padding: 12px 14px; }
.aroundline2 { border: #bbb 1px solid; padding: 12px 14px; background-color: #f4f4f4; }
.aroundline3 { border: #FF0000 2px solid; padding: 12px 14px; background-color: #FFF8DF; }
.aroundline4 { border-top: #bbb 1px solid; border-bottom: #bbb 1px solid; padding: 12px 14px; background-color: #F4f4f4; }
.aroundline5 { border: #63c8c4 1px solid; border-radius:5px; padding: 12px 14px; background-color: #a3e2df; }
.aroundline6 { border: #FFE38E 1px solid; border-radius:5px; padding: 12px 14px; background-color: #FFF3CE; }
.aroundline7 { border: #FFC1C1 1px solid; border-radius:5px; padding: 12px 14px; background-color: #FFDFDF; }
.aroundline8 { border: #ccc 1px dashed; padding: 12px 14px; background-color: #F8F8F8; }
.aroundline9 { border: #eee 4px solid; padding: 12px 14px ; background-color: #FFF; }
.aroundline10 { border-radius:5px; padding: 12px 14px; background-color: #D7F5AD; }
.aroundline11 { border-radius:5px; padding: 12px 14px; background-color: #EDFBDB; }
.aroundline12 { border-radius:5px; padding: 12px 14px; background-color: #CBEFED; }
.aroundline13 { border-radius:5px; padding: 12px 14px; background-color: #ECF9F9; }
.aroundnarrow { display: inline-block; }

.smallfont1 { font-size: 0.8em; }
.smallfont2 { font-size: 0.7em; }
.smallfont3 { font-size: 0.6em; }
.bigfont1 { font-size: 1.1em; }
.bigfont2 { font-size: 1.2em; }
.bigfont3 { font-size: 1.3em; }
.bigfont4 { font-size: 1.4em; }
.bigfont5 { font-size: 1.5em; }

.textcenter { text-align: center; }
.textright { text-align: right; }

.bg_white { background-color: #ffffff; }



/*----------------------------------------------------
	list
----------------------------------------------------*/
ul li, ol li {
	margin-bottom:5px;
}

ul li:last-child, ol li:last-child {
	margin-bottom:0;
}


ul.indList li {
	padding-left:1em;
	text-indent:-1em;
}

ul.indList2 li {
	padding-left:2em;
	text-indent:-2em;
}

ul.indList3 li {
	padding-left:3em;
	text-indent:-3em;
}

ul.indList4 li {
	padding-left:4em;
	text-indent:-4em;
}

ol.decimal{
	padding-left:1.5em;
}

ol.decimal li{
	list-style:decimal;
}

ul.disc{
	padding-left:1.5em;
}

ul.disc li{
	list-style:disc;
}

ul.kome li {
	padding-left: 1em;
	text-indent: -1em;
}



/*----------------------------------------------------
	table
----------------------------------------------------*/
.tbl01 table {
	width:100%;
	margin-bottom:5px;
	border-collapse:collapse;
	border-left:1px solid #CCC;
	border-top:1px solid #CCC;
}

.tbl01 table th,
.tbl01 table td {
	padding:8px 0 6px 0;
	border-right:1px solid #CCC;
	border-bottom:1px solid #CCC;
	line-height: 1.5;
	vertical-align:middle;
}

.tbl01 table tr.gray th{
	background:#888 left top repeat;
	color:#FFF;
	font-weight:normal;
	text-align:center;
}

.tbl01 table tr.hour th{
	padding-left:6px;
	padding-right:4px;
	background-color:#ECF9F8;
	color:#333;
	font-weight:normal;
	text-align:left;
}

.tbl01 table td {
	text-align:center;
}

.tbl01 table tr.hour2 {
    background-color: #eeeeee;
    font-size:0.8em;
}

tbl01 table tr.hour2 th {
    background-color: #ECFBFF;
}

.tbl01 table tr.small {
    font-size:0.8em;
}

.tbl01 table th.sepa, .tbl01 table td.sepa {
	padding: 0px!important;
	vertical-align: top;
}
.tbl01 table th.sepa p {
	padding:8px 4px 6px 6px;
	border-bottom: 1px #ccc solid;
}
.tbl01 table td.sepa p {
	padding:8px 0 6px 0;
	border-bottom: 1px #ccc solid;
}
.tbl01 table th.sepa p:last-child, .tbl01 table td.sepa p:last-child {
	border-bottom: none!important;
}




/*----------------------------------------------------
	width
----------------------------------------------------*/
.w5 {width:5%;}
.w10 {width:10%;}
.w12 {width:12%;}
.w15 {width:15%;}
.w20 {width:20%;}
.w25 {width:25%;}
.w30 {width:30%;}
.w35 {width:35%;}
.w40 {width:40%;}
.w45 {width:45%;}
.w50 {width:50%;}



/*----------------------------------------------------
	btn normal
----------------------------------------------------*/

.btn01, .btn02, .btn03, .btn04, .btn05, .btn06, .btn07, .btn08, #cdmlink {
	width: 46%;
	margin: 0 2%;
	float: left;
	border-radius: 8px;
	text-align: center;
	/*line-height: 1.2;*/
}

.btn01 a, .btn02 a, .btn03 a, .btn04 a, .btn05 a, .btn06 a, #cdmlink a {
	padding: 12px 0 10px 0;
	border: 2px #fff solid;
	border-radius: 8px;
	color: #333333;
	text-shadow: 0px 0px 1px #ffffff;
	display: block;
	text-decoration: none;
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
}

.btn01 a:hover, .btn02 a:hover, .btn03 a:hover, .btn04 a:hover, .btn05 a:hover, .btn06 a:hover, .btn07 a:hover, .btn08 a:hover, #cdmlink a {
	border: 2px #ffffff solid;
	cursor: pointer;
	border-radius: 8px;
}

.btn01 {
	background: #FFA64D;
	background: -webkit-gradient(linear, left top, left bottom, from(#FFF2E6), to(#FFA64D));
	background: linear-gradient(to bottom, #FFF2E6, #FFA64D);
}
.btn01 a:hover {
	background: #FF6400;
	background: -webkit-gradient(linear, left top, left bottom, from(#FCF6DF), to(#EFC83F));
	background: linear-gradient(to bottom, #FCF6DF, #EFC83F);
}
.btn01 a span {
	padding: 14px 0 10px 26px;
	background:url(/smp/img/icon_visitor.png) left center no-repeat;
	background:url(/smp/img/icon_visitor-b.png) left center no-repeat\9;
	background-size: 20px auto;
}

.btn02 {
	background: #C9C9C9;
	background: -webkit-gradient(linear, left top, left bottom, from(#F0F0F0), to(#C9C9C9));
	background: linear-gradient(to bottom, #F0F0F0, #C9C9C9);
}
.btn02 a {
	border: 1px #bbbbbb solid;
	box-shadow: none;
}
.btn02 a:hover {
	border: 1px #9E9E9E solid;
	background: #A5A5A5;
	background: -webkit-gradient(linear, left top, left bottom, from(#DFDFDF), to(#A5A5A5));
	background: linear-gradient(to bottom, #DFDFDF, #A5A5A5);
}

.btn03 {
	background: #379BFF;
	background: -webkit-gradient(linear, left top, left bottom, from(#93C9FF), to(#379BFF));
	background: linear-gradient(to bottom, #93C9FF, #379BFF);
}
.btn03 a {
	padding: 16px 0 14px 0;
}
.btn03 a:hover {
	background: #4CA6FF;
	background: -webkit-gradient(linear, left top, left bottom, from(#B9DCFF), to(#4CA6FF));
	background: linear-gradient(to bottom, #B9DCFF, #4CA6FF);
}
.btn03 a span {
	padding: 13px 0 10px 34px;
	background:url(/smp/img/icon_cube.png) left center no-repeat;
	background:url(/smp/img/icon_cube-b.png) left center no-repeat\9;
	background-size: 28px auto;
}

.btn04 {
	background: #FF8B17;
	background: -webkit-gradient(linear, left top, left bottom, from(#FBCB9C), to(#FF8B17));
	background: linear-gradient(to bottom, #FBCB9C, #FF8B17);
}
.btn04 a {
	padding: 16px 0 14px 0;
}
.btn04 a:hover {
	background: #F5993D;
	background: -webkit-gradient(linear, left top, left bottom, from(#FDE1C6), to(#F5993D));
	background: linear-gradient(to bottom, #FDE1C6, #F5993D);
}
.btn04 a span {
	padding: 13px 0 10px 36px;
	background:url(/smp/img/icon_reload.png) left center no-repeat;
	background:url(/smp/img/icon_reload-b.png) left center no-repeat\9;
	background-size: 28px auto;
}

.btn05 {
	width: 50%;
	margin: 0 auto;
	float: none;
	background: #7DC818;
	background: -webkit-gradient(linear, left top, left bottom, from(#BDF275), to(#7DC818));
	background: linear-gradient(to bottom, #BDF275, #7DC818);
}
.btn05 a {
	padding: 16px 0 14px 0;
}
.btn05 a:hover {
	background: #91D535;
	background: -webkit-gradient(linear, left top, left bottom, from(#D6F7AA), to(#91D535));
	background: linear-gradient(to bottom, #D6F7AA, #91D535);
}
.btn05 a span {
	padding: 13px 0 10px 36px;
	background:url(/smp/img/icon_mail.png) left center no-repeat;
	background:url(/smp/img/icon_mail-b.png) left center no-repeat\9;
	background-size: 28px auto;
}

.btn06 {
	background-color:none ;
}

.btn07, #cdmlink {
	width: 50%;
	margin: 0 auto;
	float: none;
}
.btn07 a, #cdmlink a {
	padding: 14px 15px 12px 15px;
	border: 2px #fff solid;
	border-radius: 8px;
	display: block;
	text-decoration: none;
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
	font-weight: bold;
	color: #fff;
	text-shadow: #003326;
	background: #00664C;
	background: -webkit-gradient(linear, left top, left bottom, from(#00A67C), to(#00664C));
	background: linear-gradient(to bottom, #00A67C, #00664C);
}
.btn07 a:hover, #cdmlink a:hover {
	background: #008463;
	background: -webkit-gradient(linear, left top, left bottom, from(#00C493), to(#008463));
	background: linear-gradient(to bottom, #00C493, #008463);
}
.btn07 a span {
	padding: 14px 0 10px 40px;
	background:url(/smp/img/icon_addlink2.png) left center no-repeat;
}

.btn08 {
	width: 70%;
	margin: 0 auto;
	float: none;
}
.btn08 a {
	padding: 14px 15px 12px 15px;
	border: 2px #fff solid;
	border-radius: 8px;
	display: block;
	text-decoration: none;
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
	font-weight: bold;
	color: #fff;
	text-shadow: #003326;
	background: #00664C;
	background: -webkit-gradient(linear, left top, left bottom, from(#00A67C), to(#00664C));
	background: linear-gradient(to bottom, #00A67C, #00664C);
}
.btn08 a:hover {
	background: #008463;
	background: -webkit-gradient(linear, left top, left bottom, from(#00C493), to(#008463));
	background: linear-gradient(to bottom, #00C493, #008463);
}
.btn08 a span {
	padding: 14px 0 10px 40px;
	background:url(/smp/img/icon_injection.png) left center no-repeat;
}

#cdmlink {
	margin: 20px auto;
}



/*----------------------------------------------------
	btn free
----------------------------------------------------*/

.btnfree1, .btnfree2, .btnfree3, .btnfree4, .btnfree5, .btnfree6, .btnfree7, .btnfree8, .btnfree9, .btnfree10, .btnfree11, .btnfree12,
.btnfree1f, .btnfree2f, .btnfree3f, .btnfree4f, .btnfree5f, .btnfree6f, .btnfree7f, .btnfree8f, .btnfree9f, .btnfree10f, .btnfree11f, .btnfree12f {
	width: 50%;
	margin: 20px auto;
	float: none;
	text-align: center;
	color: #333333;
	border-radius: 8px;
}

.btnfree1 a, .btnfree2 a, .btnfree3 a, .btnfree4 a, .btnfree5 a, .btnfree6 a, .btnfree7 a, .btnfree8 a, .btnfree9 a, .btnfree10 a, .btnfree11 a, .btnfree12 a,
.btnfree1f a, .btnfree2f a, .btnfree3f a, .btnfree4f a, .btnfree5f a, .btnfree6f a, .btnfree7f a, .btnfree8f a, .btnfree9f a, .btnfree10f a, .btnfree11f a, .btnfree12f a {
	padding: 16px 0 14px 0;
	display: block;
	color: unset;
	text-decoration: none;
}

.btnfree1 , .btnfree2 , .btnfree3, .btnfree4 , .btnfree5 , .btnfree6 , .btnfree7 , .btnfree8 , .btnfree9 , .btnfree10 , .btnfree11 , .btnfree12  {
	border: 2px solid #ffffff;
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
}

.btnfree1:hover, .btnfree2:hover, .btnfree3:hover, .btnfree4:hover, .btnfree5:hover, .btnfree6:hover, .btnfree7:hover, .btnfree8:hover, .btnfree9:hover, .btnfree10:hover, .btnfree11:hover, .btnfree12:hover,
.btnfree1f:hover, .btnfree2f:hover, .btnfree3f:hover, .btnfree4f:hover, .btnfree5f:hover, .btnfree6f:hover, .btnfree7f:hover, .btnfree8f:hover, .btnfree9f:hover, .btnfree10f:hover, .btnfree11f:hover, .btnfree12f:hover {
	opacity: 0.7;
}

.btnfree1 { background: #FFA7A7; background: linear-gradient(to bottom, #FFCACA, #FF9999); }
.btnfree2 { background: #F0F04D; background: linear-gradient(to bottom, #FFFFD2, #E8E800);  }
.btnfree3 { background: #FFD043; background: linear-gradient(to bottom, #FFE188, #FFC820); }
.btnfree4 { background: #DBDBDB; background: linear-gradient(to bottom, #EFEFEF, #D0D0D0); }
.btnfree5 { background: #6C6C6C; background: linear-gradient(to bottom, #9B9B9B, #333333); color: #ffffff; }
.btnfree6 { background: #80C9FF; background: linear-gradient(to bottom, #80C9FF, #3CACFF); }
.btnfree7 { background: #0168B7; background: linear-gradient(to bottom, #2DA6FF, #015492); color: #ffffff; }
.btnfree8 { background: #05E464; background: linear-gradient(to bottom, #40FB8F, #04CE5A); }
.btnfree9 { background: #00926D; background: linear-gradient(to bottom, #00B789, #007155); color: #ffffff; }
.btnfree10 { background: #AFAF5F; background: linear-gradient(to bottom, #C1C184, #858543); color: #ffffff; }
.btnfree11 { background: #B28500; background: linear-gradient(to bottom, #D09C00, #866500); color: #ffffff; }
.btnfree12 { background: #D90000; background: linear-gradient(to bottom, #FF0404, #AC0000); color: #ffffff; }

.btnfree1f { background: #FFA7A7; }
.btnfree2f { background: #F0F04D; }
.btnfree3f { background: #FFD043; }
.btnfree4f { background: #DBDBDB; }
.btnfree5f { background: #6C6C6C; color: #ffffff; }
.btnfree6f { background: #80C9FF; }
.btnfree7f { background: #0168B7; color: #ffffff; }
.btnfree8f { background: #05E464; }
.btnfree9f { background: #00926D; color: #ffffff; }
.btnfree10f { background: #AFAF5F; color: #ffffff; }
.btnfree11f { background: #B28500; color: #ffffff; }
.btnfree12f { background: #D90000; color: #ffffff; }



/*----------------------------------------------------
	btn other
----------------------------------------------------*/

.backb {
	width: 140px;
	margin: 0 10px 0 0;
	float: right;
	border-radius: 8px;
	text-align: center;
	line-height: 1;
	background: #C9C9C9;
	background: -webkit-gradient(linear, left top, left bottom, from(#F0F0F0), to(#C9C9C9));
	background: linear-gradient(to bottom, #F0F0F0, #C9C9C9);
}

.backb2 {
	width: 140px;
	margin: 0 10px;
	display: inline-block!important;
	border-radius: 8px;
	text-align: center;
	line-height: 1;
	background: #C9C9C9;
	background: -webkit-gradient(linear, left top, left bottom, from(#F0F0F0), to(#C9C9C9));
	background: linear-gradient(to bottom, #F0F0F0, #C9C9C9);
}

.backb a, .backb2 {
	padding: 12px 0 10px 0;
	border: 1px #bbbbbb solid;
	border-radius: 8px;
	color: #333333;
	text-shadow: 0px 0px 2px #ffffff;
	display: block;
	text-decoration: none;
}
.backb a:hover, .backb2:hover {
	border: 1px #9E9E9E solid;
	background: #A5A5A5;
	background: -webkit-gradient(linear, left top, left bottom, from(#DFDFDF), to(#A5A5A5));
	background: linear-gradient(to bottom, #DFDFDF, #A5A5A5);
	cursor: pointer;
	border-radius: 8px;
}

input.nextb, .formarea .nextb2 {
	display: inline-block!important;
	margin: 0 10px!important;
}


.linktext a {
	padding-left: 12px;
	color: #5F5F4A;
	position: relative;
	display: block;
}

.linktext a::before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	top: 5px;
	left: 0;
	border-top: solid 5px transparent;
	border-right: solid 5px transparent;
	border-bottom: solid 5px transparent;
	border-left: solid 7px #F70E0E;
}

#reload1 {
	cursor: pointer;
}



/*----------------------------------------------------
	common
----------------------------------------------------*/

.blinktext {
	-webkit-animation:blink 1.0s ease-in-out infinite alternate;  
	-moz-animation:blink 1.0s ease-in-out infinite alternate;  
	animation:blink 1.0s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
	0% {opacity:0;}
	100% {opacity:1;}
}
@-moz-keyframes blink{
	0% {opacity:0;}
	100% {opacity:1;}
}
@keyframes blink{
	0% {opacity:0;}
	100% {opacity:1;}
}

.freebox {
	width: 100%;
}

.freebox .left25 {
	width: 25%;
	float: left;
}

.freebox .left33 {
	width: 33%;
	float: left;
}
.freebox .left50 {
	width: 50%;
	padding-right:10px;
	float: left;
}

.btn_box {
	text-align: center;
}

.btn_box div {
	max-width: 50%;
	padding: 0 10px;
	display: inline-block;
}

.btn_box div input, .btn_box div span, .btn_box div a {
	min-width: 200px;
	margin: 0!important;
	padding: 12px 5px 10px 5px;
	display: block;
	white-space: normal;
	line-height: 1.2!important;
}

.btn_box div .btn_cancel {
	background: linear-gradient(to bottom, #DFDFDF, #A5A5A5)!important;
	border: 1px #9E9E9E solid!important;
	border-radius: 8px;
	color: #333;
}


.pc {
	display: block;
}

.sp, .sp2 {
	display: none;
}





/*----------------------------------------------------
	header 
----------------------------------------------------*/

#header {
	padding-top: 2px;
	min-width:960px;
	border-top: 3px #38b3ae solid;
}

#header .headerInr {
	width:960px;
	margin:0 auto;
	position: relative;
}

#header .headerInr .message {
	margin-top: 0;
	margin-bottom: 12px;
	font-size: 85%;
}
#header .headerInr .message span {
	padding-right: 4px;
}

#header .headerInr .message span:last-child {
	padding-right: 6px;
}

#header .headerInr h1{
	margin-bottom: 5px;
	font-weight: bold;
	font-size: 1.5em !important;
	line-height: 1.1;
}

#header .headerInr h1 img{
	margin:0;
	vertical-align:middle;
	z-index:1;
}

#spmenu {
	display: none;
}

#logo span {
	display: block;
}



/*----------------------------------------------------
	menu
----------------------------------------------------*/
#rMenu {
	width:238px;
	float:right;
}

#mainmenu {
	margin: 0 0 15px 0;
	border-radius: 6px;
	box-shadow: 0 0 4px rgba(0,0,0,0.3);
	-webkit-box-shadow: 0 0 4px rgba(0,0,0,0.3);
	background-color: #ffffff;
}

#mainmenu h2 {
	/*height: 38px;
	min-height: 38px;*/
	line-height: 1;
	text-indent: 0;
	border: none;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
	border-bottom: 2px solid #555;
	color: #ffffff;
	
	background-color: #8F8F8F;
	background: -webkit-gradient(linear, left top, left bottom, from(#ACACAC), to(#8F8F8F));
	background: linear-gradient(to bottom, #ACACAC, #8F8F8F);
}

#mainmenu h2 {
	font-weight: normal;
	font-size: 16px;
	background-repeat: no-repeat;
	text-shadow: 0px 0px 2px #ffffff;
	box-shadow: none;
	-webkit-box-shadow: none;
	background-color: #ffffff;
}
#mainmenu h2 .titletxt {
	padding: 4px 0 0 0;
	text-shadow: 0px 0px 1px #333;
}

.menuup, .menudown {
	display:none;
}

#mainmenu ul {
	padding:0px;
}

#mainmenu ul li {
	width: 100%;
	margin: 0;
	border-bottom: 1px #ddd solid;
	background-color: #E8E8E8;
	background: -webkit-gradient(linear, left top, left bottom, from(#FDFDFD), to(#E8E8E8));
	background: linear-gradient(to bottom, #FDFDFD, #E8E8E8);
}

#mainmenu ul li:last-child {
	border-bottom-left-radius: 6px;
	border-bottom-right-radius: 6px;
}

#mainmenu ul li a {
	padding: 12px 10px 9px 26px;
	font-size:14px;
	color:#444;
	position: relative;
	display: block;
}
#mainmenu ul li a::before {
	content: "";
	position: absolute;
	left: 5px;
	top: 16px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #3199D6;
	border-right: 2px solid #3199D6;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#mainmenu ul li:hover {
	background-color: #FFCD9B;
	background: -webkit-gradient(linear, left top, left bottom, from(#FFF7EE), to(#FFCD9B));
	background: linear-gradient(to bottom, #FFF7EE, #FFCD9B);
}
#mainmenu ul li:hover a {
	text-decoration: none;
}

#subb .bar {
	margin-bottom: 15px;
	background-color: #fff;
	border-radius:6px;
	box-shadow: 0 0 3px rgba(0,0,0,0.3);
	-webkit-box-shadow: 0 0 3px rgba(0,0,0,0.3);
}

#subb #qrcode {
	text-align: center;
}

#subb #qrcode .codeimg {
	padding: 25px 0;
}

#subb #qrcode .qrinfo1, #subb #qrcode .qrinfo2 {
	padding-bottom: 12px;
}

#subb #qrcode .qrinfo1text {
    background-color: #f5f5f5;
    border-bottom: 1px solid #dcdcdc;
    border-top: 1px solid #dcdcdc;
    padding: 8px 0 6px 0;
    font-size: 0.85em;
}

#subb #qrcode .qrinfo2text {
    background-color: #ffffff;
    font-size: 0.75em;
    padding: 8px 10px 6px 10px;
    text-align: left;
    border-radius: 0 0 6px 6px;
}

#cardset .qrcode2016 {
	padding: 20px;
}


#subb .img01 {
	position: relative;
	height: 100px;
}

#subb .img01 img {
	position: absolute;
	left: 0px;
	top: 0px;
}

#subb .img01 .imgtext {
	position: absolute;
	left: 84px;
	top: 11px;
	color: #333;
	font-size: 11px;
	/*z-index: 3;*/
}

#sub-oldversion {
}

#sub-oldversion.img02 a {
	display: block;
	width: 238px;
	height: 46px;
	background:url(/smp/img/bnr_rMenu_04r.png) left top no-repeat;
	padding: 12px 0 0 43px;
}

#sub-oldversion.img02 .imgtext {
	color: #464637;
	font-size: 15px;
}


#rMenu .info {
	margin-bottom:20px;
	padding-bottom:10px;
	background:url(/smp/img/bg_rMenu_bottom.png) left bottom no-repeat;
}

#rMenu .info .infoInr {
	padding:15px 15px 5px 15px;
	background:url(/smp/img/bg_rMenu_top.png) left top no-repeat;
}

#rMenu .info .infoInr .title {
	margin-bottom:10px;
	padding-left:25px;
	background:url(/smp/img/icon_info.png) left top no-repeat;
	color:#0f4196;
	font-weight:bold;
	min-height:19px;
}

#userset {
	margin-bottom: 15px;
	border-radius:6px;
	border: 1px #ccc solid;
	background-color: #fff;
	box-shadow: 0 0 3px rgba(0,0,0,0.3);
	-webkit-box-shadow: 0 0 3px rgba(0,0,0,0.3);
	overflow: hidden;
}

#userset .nametitle {
	padding: 4px 10px 0 24px;
	background:url(/smp/img/bg_nametitle.png) 6px bottom no-repeat;
	background-color: #cccccc;
	line-height: 1.2;
	border-bottom: 1px #ccc solid;
	font-size: 0.8em;
}
#userset .nameset {
	margin-top: 1px;
	padding: 10px 5px;
	border-top: 1px solid #ccc;
	text-align: center;
}
#userset .nameset span {
	padding: 0 5px 0 0;
	font-size: 1.2em;
}

.familylink {
	display: none;
}

#use.familylink {
	margin: 10px 0 -5px 0;
	text-align: right;
	display: block;
}

#use.familylink span a {
	padding: 4px 0 3px 10px;
	color: #1B75AA;
	font-size: 0.85em;
	position: relative;
	display: inline-block;
}
#use.familylink span a::before {
	content: "";
	position: absolute;
	left: -6px;
	top: 9px;
	width: 7px;
	height: 7px;
	border-top: 2px solid #3199D6;
	border-right: 2px solid #3199D6;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#use.familylink span a:hover {
	text-decoration: none;
	color: #FF4000;
}

#cardset .familylink {
	display: none;
}

#cardset #use.familylink {
	margin: 20px 0 25px 0;
	text-align: right;
	display: block;
}

#cardset #use.familylink span a {
	padding: 4px 10px 3px 22px;
	color: #1B75AA;
	font-size: 0.85em;
	border: 2px #1B75AA solid;
	border-radius: 5px;
	font-size: 1em;
}

#cardset #use.familylink span a:hover {
	background-color: #1B75AA;
	color: #fff;
}

#cardset #use.familylink span a::before {
	left: 4px!important;
}


/*----------------------------------------------------
	slidemenu
----------------------------------------------------*/

#slide_spmenu {
	display: none;
}

#slide_menu {
	width: 250px;
	position: absolute;
	top: 0;
	right: 0;
	height: auto;
	background: #ccc;
	display: none;
}

#slide_menu .menutitle {
	padding: 18px 0 0 10px;
	font-size:20px;
	color: #fff;
	background-color: #888;
	cursor:pointer;
	height:62px;
	border-bottom: 2px #333 solid;
	display: block;
	position: relative;
}

#slide_menu .menutitle::before {
	content: "";
	position: absolute;
	right: 15px;
	top: 24px;
	width: 12px;
	height: 12px;
	border-top: 3px solid #eee;
	border-right: 3px solid #eee;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#slide_menu .menutitle::after {
	content: "";
	position: absolute;
	right: 24px;
	top: 24px;
	width: 12px;
	height: 12px;
	border-top: 3px solid #eee;
	border-right: 3px solid #eee;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


#slide_menu ul {
	padding:0px;
}

#slide_menu ul li {
	width: 100%;
	margin: 0;
	border-bottom: 1px #ddd solid;
	background-color: #E8E8E8;
	background: -webkit-gradient(linear, left top, left bottom, from(#FDFDFD), to(#E8E8E8));
	background: linear-gradient(to bottom, #FDFDFD, #E8E8E8);
}

#slide_menu ul li a {
	padding:16px 10px 13px 26px;
	font-size:16px;
}



#slide_menu ul li:hover {
	background-color: #FFCD9B;
	background: -webkit-gradient(linear, left top, left bottom, from(#FFF7EE), to(#FFCD9B));
	background: linear-gradient(to bottom, #FFF7EE, #FFCD9B);
}
#slide_menu ul li:hover a {
	text-decoration: none;
}

#overlay {
	content: '';
	position: fixed;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-color: #000000;
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
	z-index: 9;
	cursor: pointer;
}



/*----------------------------------------------------
	contents
----------------------------------------------------*/

#contents{
	min-width:960px;
	padding: 20px 0 80px 0;
	background:url(/smp/img/bg_back.jpg) left top repeat-x; /*for IE6-9*/
	
	background-color: #fff;
	background: -webkit-gradient(linear, left top, left bottom, from(#DEF3F2), to(#fff));
	background: linear-gradient(to bottom, #DEF3F2, #fff);
	background-size: auto 120px;
	background-repeat: repeat-x;
}

#contents .contentsInr {
	width:960px;
	margin:0 auto;
}

#contents .contentsInr a {
	cursor: pointer;
}

#contents .contentsInr #main {
	float:left;
	width:700px;
}

#main .section:nth-child(n+2) {
	margin-top: 40px;
}

#main #news0 + div {
	margin-top: 0!important;
}

h2 {
	padding: 8px 10px;
	line-height: 1;
	text-indent: 0;
	background-color: #63C8C4;
	background: -webkit-gradient(linear, left top, left bottom, from(#A3E2DF), to(#63C8C4));
	background: linear-gradient(to bottom, #A3E2DF, #63C8C4);
	border: 1px #fff solid;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	border-radius:5px;
	box-shadow: 0 0 4px rgba(0,0,0,0.3);
	-webkit-box-shadow: 0 0 4px rgba(0,0,0,0.3);
}

h3 {
	margin-bottom:10px;
	padding: 4px 0 4px 7px;
	border-bottom: 1px #65C9C5 solid;
	border-left: 4px #65C9C5 solid;
	font-weight: bold;
}

h4 {
	margin-bottom:10px;
	padding: 4px 0 3px 10px;
	border-left: 2px #65C9C5 solid;
	font-weight: bold;
}

.section h2 .titletxt {
	font-weight: normal;
	font-size: 16px;
	background-repeat: no-repeat;
	background-size: 20px auto;
	text-shadow: 0px 0px 2px #ffffff;
	text-indent: -1.9em;
	margin-left: 1.9em;
	line-height: 1.1;
}

.section h2 .titletxt::before {
	content: "";
	display: inline-block;
	margin-right: 10px;
	width: 20px;
	height: 20px;
	vertical-align: bottom;
	background-image: url(/smp/img/icon_menu2022.png);
	background-size: 20px auto;
	background-repeat: no-repeat;
}


#main h2 .titletxt::before { background-position: 0 -100px; }
#news h2 .titletxt::before { background-position: 0 0; }
#guide h2 .titletxt::before { background-position: 0 -20px; }
#mailset h2 .titletxt::before { background-position: 0 -40px; }
#hours h2 .titletxt::before { background-position: 0 -60px; }
#access h2 .titletxt::before { background-position: 0 -80px; }
#now h2 .titletxt::before { background-position: 0 -120px; }
.other_title h2 .titletxt::before { background-position: 0 -160px; }


#main .news0contents, #main .news2contents {
	display: none;
}

#news0 {
	margin-bottom: 20px;
	padding: 8px 10px;
	border: 1px solid #CCCCCC;
	border-radius: 5px;
	background-color: #FFFFFF;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.3);
}

#news2 {
	margin-bottom: 20px;
	padding: 8px 10px;
	border: 1px solid #CCCCCC;
	background-color: #FAFAFA;
	border-radius: 5px;
}


.waitlist {
}

.waitlist span {
	color: #00468C!important;
	word-break: keep-all;
}

.waitlist .waitlistbox {
	margin-bottom: 5px;
	padding: 5px 8px!important;
	background-color: #f4f4f4;
	border-radius: 5px;
	color: #00468C;
	font-weight: bold;
}

.waitlist .waitlist_toggle {
	cursor: pointer;
	display: inline-block;
}

.waitlist .waitlist_toggle.is-close::before {
	content: '...';
	padding: 0 10px 0 0;
}


#main .value {
	margin-top: 20px;
	padding: 0 10px;
}

#main .hidevalue {
	display: none;
}

#main .nowdata {
	margin-bottom: 0;
}

#main .nowdata p:last-child {
	margin-bottom: 0;
}

#main .nowdata .nowinfo, #smpcurrent .nowinfo {
	margin-bottom: 10px;
	padding-left: 0.5em;
	border-bottom: 1px dotted #ccc;
}

#main .nowdata .nowinfo span, #smpcurrent .nowinfo span {
	padding: 0 2px 0 10px;
	font-weight: bold;
	color: #b50106;
}

#main .sysmaintenance {
	margin-bottom: 20px;
	padding: 8px 10px 5px 10px;
	border: 1px #ccc solid;
	background-color: #f4f4f4;
	display: none;
}

#main .sysmaintenance table {
	width: 100%;
}

#main .maintenance {
	margin-bottom: 20px;
	padding: 8px 10px 5px 10px;
	border: 1px #ccc solid;
	background-color: #f4f4f4;
	display: none;
}

#outtime {
	margin-bottom: 20px;
	padding: 12px 14px;
	border: #bbb 1px solid;
	background-color: #f4f4f4;
	color: #b50106;
	display: none;
}

.infobox {
	border: 1px #cccccc solid;
	background-color: #ffffff;
}
.infobox .intitle {
	border-bottom: 1px #cccccc solid;
	height: 35px;
	background-color: #FFEFBF;
	background-image: url(/smp/img/bg_mailadd.png);
	background-image: url(/smp/img/bg_mailadd-b.png)\9;
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 47px 35px;
}
.infobox .intitle p {
	padding: 8px 5px 0 58px!important;
	font-weight: bold;
	color: #796011;
}
.infobox .intext {
	padding: 10px;
}

.infobox2 {
	border: 1px #cccccc solid;
	display: inline-block;
	margin-top: 15px;
	padding: 5px 5px 3px 8px;
	background-color: #f4f4f4;
}



/*----------------------------------------------------
	22/08/19 追加
	for indexN
----------------------------------------------------*/

.sub_section + .sub_section {
    margin-top: 20px;
}

#indexN #main .sysmaintenance {
	display: block;
}

#indexN #main .maintenance {
	display: block;
}

#indexN #outtime {
	display: block;
}
#indexN #now .value p {
	background: none;
}

#indexN #now .value .booklist p {
	margin-bottom: 8px;
	padding: 0 0 5px 22px;
	border-bottom: 1px #ccc dotted;
	background:url(/smp/img/icon_reserve.png) left 2px no-repeat;
	background-size: auto 13px;
}




.guidetext {
	margin: 0 0 20px 0;
}

.guidetext .t1 {
	margin-bottom: 15px;
	border-bottom: 1px #ddd solid;
	color: #004B97;
}

.guidetext .check p.caution {
	padding-left: 1em;
	text-indent: -1em;
}

.guidetext .check .caution:last-child {
	margin-bottom: 10px;
}

#mailaddbtnset {
	display: none;
}

#info_webExam .btnfree3 {
	margin: 0px auto;
}

.bb-box {
	width:80%;
	margin: 0 auto;
	padding-top: 20px;
}

.bb-box2 {
}

.bb-box2 ul {
	padding:0px;
	margin-bottom: 20px;
}

.bb-box2 ul li {
	width: 100%;
	margin-bottom: 10px;
	padding-bottom: 1px;
	border: 1px #ddd solid;
	border-radius: 6px;
	background-color: #E8E8E8;
	background: -webkit-gradient(linear, left top, left bottom, from(#FDFDFD), to(#E8E8E8));
	background: linear-gradient(to bottom, #FDFDFD, #E8E8E8);
}

.bb-box2 ul li a {
	padding: 11px 10px 8px 26px;
	font-size:14px;
	color:#444;
	display:block;
	line-height:1.3;
	position: relative;
}
.bb-box2 ul li a::before {
	content: "";
	position: absolute;
	left: 5px;
	top: 14px;
	width: 8px;
	height: 8px;
	border-top: 2px solid #3199D6;
	border-right: 2px solid #3199D6;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.bb-box2 ul li:hover {
	background-color: #FFCD9B;
	background: -webkit-gradient(linear, left top, left bottom, from(#FFF7EE), to(#FFCD9B));
	background: linear-gradient(to bottom, #FFF7EE, #FFCD9B);
}
.bb-box2 ul li:hover a {
	text-decoration: none;
}

.bb-box2 ul li.lastb, .bb-box2 ul li.li_last,
.result .bb-box2 ul li:has(a[href*="smp_vacEnd"], a[href*="openMon"]) {
	margin-top: 25px;
	border: 1px #9CCFE0 solid;
	background-color: #ADD8E6;
	background: -webkit-gradient(linear, left top, left bottom, from(#DFDFDF), to(#A5A5A5));
	background: linear-gradient(to bottom, #DAEDF3, #ADD8E6)
}

.bb-box2 ul li.lastb:hover, .bb-box2 ul li.li_last:hover,
.result .bb-box2 ul li:has(a[href*="smp_vacEnd"], a[href*="openMon"]):hover {
	background-color: #8AC6D9;
	background: -webkit-gradient(linear, left top, left bottom, from(#C2E2EC), to(#8AC6D9));
	background: linear-gradient(to bottom, #C2E2EC, #8AC6D9)
}

.bb-box2 ul div.date:has(li a:empty) {
	display: none;
}

.bb-box2 ul.widetype li {
	width: 48%;
	margin: 0 1% 10px 1%;
	float: left;
}


body:not(#indexN) #now .value p {
	margin-bottom: 8px;
	padding: 0 0 5px 22px;
	border-bottom: 1px #ccc dotted;
	background:url(/smp/img/icon_reserve.png) left 2px no-repeat;
	background:url(/smp/img/icon_reserve-b.png) left 2px no-repeat\9;
	background-size: auto 13px;
}


#now .value p:last-child {
	margin-bottom: 0;
}

#now p a {
	border-bottom: 1px #FFC926 solid;
	color:#333;
}

#now p a:hover {
	text-decoration: none;
	color: #D96D00;
}

.syubetu #now .value, .vacancyset #now .value {
	margin: 15px 0 0!important;
	padding: 0 !important;
	background-color: #fff!important;
	border: medium none !important;
}
.syubetu #now, .vacancyset #now {
	margin-bottom: 40px;
	padding: 15px;
	border: 3px double #ddd;
}



.bb-box3 ul {
	padding:0px;
	margin-bottom: 20px;
	text-align: center;
}

.bb-box3 ul li {
	margin: 0 5px;
	display: inline-block;
	text-align: center;
	border: 1px #ddd solid;
	border-radius: 6px;
	background-color: #E8E8E8;
	background: -webkit-gradient(linear, left top, left bottom, from(#FDFDFD), to(#E8E8E8));
	background: linear-gradient(to bottom, #FDFDFD, #E8E8E8);
}

.bb-box3 ul li a {
	padding: 9px 10px 6px 10px;
	font-size:12px;
	color:#444;
	display:block;
}
.bb-box3 ul li:hover {
	background-color: #FFCD9B;
	background: -webkit-gradient(linear, left top, left bottom, from(#FFF7EE), to(#FFCD9B));
	background: linear-gradient(to bottom, #FFF7EE, #FFCD9B);
}
.bb-box3 ul li:hover a {
	text-decoration: none;
}


.bb-box4 {
	width: 100%;
	max-width:320px;
	margin: 0 auto;
	padding:10px;
	border: 1px #ddd solid;
	text-align: center;
}


.bb-vertic {
	width: 60%!important;
	max-width:320px!important;
	margin: 0 auto 20px auto!important;
}


.backarea {
	margin-top: 40px;
	padding: 10px 0;
	background-color: #eee;
	border-top: 1px #ccc dotted;
	border-bottom: 1px #ccc dotted;
}

.mapinfo {
	font-size: 0.8em;
}




/*----------------------------------------------------
	form
---------------------------------------------------*/

.formarea {
	margin: 0;
}

.formarea input[type="text"], .formarea input[type="tel"], .formarea input[type="number"], .formarea input[type="email"], .formarea input[type="password"] {
	width: 200px;
	padding: 4px 6px 2px 6px;
	margin-right: 5px;
	border: 1px #bbbbbb solid;
	box-shadow: 1px 4px 9px -6px rgba(0, 0, 0, 0.3) inset;
	vertical-align: middle;
	border-radius: 3px;
	height: 32px;
}

.formarea input[type="text"]:focus, .formarea input[type="tel"]:focus, .formarea input[type="number"]:focus, .formarea input[type="email"]:focus, .formarea input[type="password"]:focus {
	background-color: #ffffca !important;
	border: 1px solid #eea34a !important;
}

.formarea input[type="submit"], .formarea2 input[type="submit"], .formarea2 a, .formarea .nextb2 {
	width: 220px;
	margin: 0;
	border-radius: 8px;
	text-align: center;
	line-height: 1;
	background: #FFA64D;
	background: -webkit-gradient(linear, left top, left bottom, from(#FFF2E6), to(#FFA64D));
	background: linear-gradient(to bottom, #FFF2E6, #FFA64D);
	padding: 12px 0 10px 0;
	border: 1px #FFAF5E solid;
	border-radius: 8px;
	color: #333333;
	text-shadow: 0px 0px 2px #ffffff;
	display: block;
	text-decoration: none;
	cursor: pointer;
}
.formarea input[type="submit"]:hover, .formarea2 input[type="submit"]:hover, .formarea2 a:hover, .formarea .nextb2:hover {
	cursor: pointer;
	border: 1px #EEC639 solid;
	border-radius: 8px;
	background: #FF6400;
	background: -webkit-gradient(linear, left top, left bottom, from(#FCF6DF), to(#EFC83F));
	background: linear-gradient(to bottom, #FCF6DF, #EFC83F);
}

.formarea input[type="text"].confirmemail {
	width: 350px;
}

.rireki_sel .formarea input[type="submit"] {
	margin-top: 50px;
}
.vaccination_sel .formarea input[type="submit"] {
	margin-top: 50px;
}

.rireki_sel .delkey, #ask .delkey {
	font-size: 1.1em;
	color: #2983b8;
	cursor: pointer;
}
.vaccination_sel .delkey, #ask .delkey {
	font-size: 1.1em;
	color: #2983b8;
	cursor: pointer;
	display: inline-block;
}

.formarea .md {
	/*width: 60px;*/
	text-align: center;
}

.formarea .other {
	width: 160px;
	text-align: center;
}

.bb-box4 .formarea input[type="submit"] {
	width: 100%;
	margin: 0;
	padding: 10px 0 8px 0;
	line-height: 1;
	background-color: #E8E8E8;
	background: -webkit-gradient(linear, left top, left bottom, from(#FDFDFD), to(#E8E8E8));
	background: linear-gradient(to bottom, #FDFDFD, #E8E8E8);
	border: 1px #ddd solid;
	border-radius: 5px;
	color: #333333;
	text-shadow: 0px 0px 2px #ffffff;
	display: block;
	text-align: center;
	text-decoration: none;
}

.bb-box4 .formarea input[type="submit"]:hover {
	cursor: pointer;
	border-radius: 5px;
	background-color: #FFCD9B;
	background: -webkit-gradient(linear, left top, left bottom, from(#FFF7EE), to(#FFCD9B));
	background: linear-gradient(to bottom, #FFF7EE, #FFCD9B);
}

.formarea select {
	min-width: 3.5em;
	margin-bottom: 10px;
	padding: 0 5px 0 5px;
	border: 1px #bbbbbb solid;
	border-radius: 5px;
	vertical-align: middle;
	height: 30px;
	line-height:2;
	background: #fff;
	color: #333;
}

.formarea input[type="hidden"] + span, .formarea select + span {
	margin-top: -5px;
}

.formarea .fbox {
	width: 670px;
	margin-bottom: 20px;
}
.formarea .fbox .fboxin1 {
	width: 155px;
	float: left;
	padding: 5px 12px 5px 10px;
	border-left: 2px #2983B8 solid;
}
.formarea .fbox .fboxin1 span.required {
	padding-right: 34px;
	background-image:url(/smp/img/icon_req.png);
	background-repeat: no-repeat;
	background-position: right center;
}
.formarea .fbox .fboxin2 {
	width: 240px;
	float:left;
}
.formarea .fbox .fboxin2.size2 {
	width: 280px;
	float:left;
}
.rireki_sel .formarea .fbox .fboxin2 {
	width: 340px;
}
.vaccination_sel .formarea .fbox .fboxin2 {
	width: calc(100% - 160px);
}

.formarea .fbox .fboxin2b {
	width: 240px;
	padding: 5px 0 5px 0;
	float:left;
}
.formarea .fbox .fboxin3 {
	width: 270px;
	float:left;
	padding: 1px 0 0 0;
	color:#666;
	font-size: 0.85em;
	line-height: 1.2;
}
.formarea .fbox .fboxin4 {
	width: 100%;
	margin-bottom: 10px;
	padding: 5px 0 5px 10px;
	border-left: 2px #2983B8 solid;
}
.formarea .fbox .fboxin5 {
	width: 100%;
	margin-left: 20px;
}
.formarea .fbox .fboxin6 {
	width: 100%;
	margin-bottom: 10px;
	padding: 5px 0 5px 10px;
}
.formarea .fbox select {
	margin: 0;
	padding: 0;
}
.formarea hr {
	margin-bottom: 20px;
	border: none;
}

.formarea .forminfo {
	margin-bottom: 10px;
	padding: 10px;
	background-color: #eee;
	border: 1px #ccc solid;
	border-radius: 5px;
	display: inline-block;
	font-size: 0.8em;
}

.formarea input.err, .formarea select.err {
	background-color: #FFEAEF;
	border: 1px #FF0046 solid!important;
}

.formarea2 img {
	margin: 10px;
}

input#c_address, input#c_address2 {
	width: 90px!important;
}

.ajaxzip .zip input {
	width: 90px!important;
}

.ajaxzip .pref input {
	width: 90px!important;
}

.ajaxzip .fboxin2.address1, .ajaxzip .fboxin2.address2 {
	width: 480px!important;
}

.ajaxzip .address1 input, .ajaxzip .address2 input {
	width: 100%!important;
}



/*----------------------------------------------------
	registAll
---------------------------------------------------*/

.registAll .inputbox:not(:last-of-type) {
    margin-bottom: 20px;
}

.registAll input[type="submit"] {
    margin-top: 40px;
}

.registAll .inputbox label {
	width: 200px;
	padding: 5px 12px 5px 10px;
	float: left;
	border-left: 2px #2983B8 solid;
}

.registAll .inputbox label span.required {
	padding-right: 34px;
	background-image:url(/smp/img/icon_req.png);
	background-repeat: no-repeat;
	background-position: right center;
}

.registAll .inputbox .inputparts {
	float: left;
}

.registAll .inputbox input[type="text"], .registAll .inputbox input[type="tel"], .registAll .inputbox input[type="number"], .registAll .inputbox input[type="email"], .registAll .inputbox input[type="password"]{
	width: 250px;
	margin:  0 15px 3px 0;
	padding: 4px 6px 2px 6px;
	border: 1px #bbbbbb solid;
	box-shadow: none;
	vertical-align: middle;
	border-radius: 3px;
	height: 32px;
	ime-mode: active;
}


.registAll .inputbox .subtext {
	font-size: 0.75em;
	color: #888;
	display: block;
}

.passcheck {
	margin-left: -10px;
	cursor: pointer;
	vertical-align: middle;
	font-size: 2em;
	line-height: 1;
	opacity: 0.4;
}



/*----------------------------------------------------
	ask
---------------------------------------------------*/

#ask {
	margin: 20px 10px 0 10px;
	padding: 10px;
	border: 2px #b50106 solid;
	border-radius: 5px;
	text-align: left;
	background-color: #fff;
}

.value #ask {
	margin: 20px 0;
}

#ask p {
	margin-bottom: 10px;
}
#ask input {
	margin: 0 5px 0 20px;
}
#ask textarea {
	max-width: 100%;
	padding: 0 6px;
	border: 1px #bbbbbb solid;
	box-shadow: 1px 4px 9px -6px rgba(0, 0, 0, 0.3) inset;
	border-radius: 3px;
}


#ask input[type="submit"], .formarea .next2b {
	margin: 20px auto 20px auto;
}

#ask input[type="text"] {
	width: auto;
}

.confirm {
	margin-bottom: 20px;
	padding: 10px 20px;
	display: inline-block;
	background-color: #f4f4f4;
	text-align: center;
	border: 2px #FFAA55 solid;
	border-radius: 5px;
}

.confirm span {
	padding-right: 2px;
	color: #b50106;
	font-weight: bold;
}

.confirm div + p.info {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px #ccc solid;
}
.confirm p.family {
	margin-top: 5px;
	text-align: left;
}


.confirm2 {
	margin-bottom: 20px;
	padding: 10px 20px;
	background-color: #f4f4f4;
	text-align: center;
	border: 2px #006DD9 solid!important;
	border-radius: 5px;
}

#askcheck {
	margin-bottom:40px;
}

#askcheck p {
	margin-bottom: 3px;
}

#askcheck .info {
	margin-bottom:10px;
	padding: 0 10px;
}
#askcheck .info2 {
	margin-bottom:10px;
}
#askcheck .info p.kome, #askcheck .info2 p.kome {
	padding-left: 1em;
	text-indent: -1em;
	color: #ff0000;
}

#askcheck .mess, #askcheck .mess2 {
	margin-bottom:20px;
}

#askcheck .mess3 {
	margin-bottom:20px;
	color:red;
}

#askcheck .alertmess {
	margin-bottom: 5px;
	padding: 4px 8px;
	background-color: #ffdddf;
	color: #b50106;
}

#askcheck .ques {
	margin-top: 15px;
	margin-bottom: 8px;
	padding: 8px 0 5px 10px;
	font-weight: bold;
	border-radius: 5px;
	background-color: #f4f4f4;
}
#askcheck .ques:first-of-type {
	margin-top: 0;
}

#askcheck .sec {
	margin-bottom: 20px;
}

#askcheck .sec .item {
	margin-bottom: 5px;
	padding:0 10px;
}

#askcheck .sec .item label {
	margin: 0 20px 0 0;
}

#askcheck .sec .item label:hover {
	cursor: pointer;
	color: #006DD9;
}

#askcheck .itemcheck {
	display: none;
}

#askcheck .askreqmark {
	padding-left: 36px;
	display: inline-block;
	background: url("/smp/img/icon_req.png") left 1px no-repeat;
}

#askcheck .sec .readonly input, #askcheck .sec .readonly textarea {
	display: none;
}

#askcheck input[type="text"] {
	margin: 0 8px 0 8px;
}

#askcheck input[type="checkbox"] {
	margin: 0 8px 0 20px;
}

#askcheck select {
	margin: 0 8px 0 0;
	padding: 0 6px;
}

#askcheck input[type="text"]:first-child, #askcheck input[type="checkbox"]:first-child, #askcheck input[type="radio"]:first-child {
	margin: 0 8px 0 0;
}

#price .totalset {
	display: none;
}


.confirm2 form .selectsec {
	display: block!important;
}


#backbbset {
	margin-bottom: 20px;
	text-align: center;
}


.askindata1 {
	padding: 0 10px;
	font-weight: bold;
	color: #006DD9;
}

.askindata1:first-child {
	padding: 0 10px 0 0;
}


.askindata2 {
	padding: 0 20px 0 0;
	font-weight: bold;
	color: #006DD9;
}

.askindata3 {
	padding: 0;
	font-weight: bold;
	color: #006DD9;
}

.pricecode, .basicprice, #nomessage, .noselectmess, .pagetitle, .pageinfo {
	display: none;
}

#price.webpay .item+.readonly span {
	padding: 5px;
	display:inline-block;
}

#price.webpay .item+.readonly span:nth-child(1) {
	width: 200px;
}

#price.webpay .item+.readonly span:nth-child(2) {
	width: 100px;
	text-align: right;
}

#price.webpay .item+.readonly:last-child {
	margin-top: 10px;
	font-weight: bold;
	border-top: 1px #ccc solid;
	display: inline-block;
}



/*----------------------------------------------------
	card
---------------------------------------------------*/

.qrtitle {
	margin-bottom: 10px;
	padding: 5px;
	background-color: #ddd;
	text-align: center;
}

.qrcode {
	text-align: center;
}

.qrid {
	margin-bottom: 10px;
	text-align: center;
	font-size: 1.2em;
	font-weight: bold;
}

.qrname {
	margin: 0 auto 20px auto;
	text-align: center;
	font-size: 1.2em;
	font-weight: bold;
}

.qrsubtitle {
	padding:7px 0 5px 10px ;
	background-color:#f4f4f4;
	border-top:1px #ccc solid;
	border-bottom:1px #ccc solid;
}

#cardset {
	width: 470px;
	margin: 0 auto 20px auto;
	border: 5px #eeeeee solid;
	background-color:#ffffff;
}

#cardset .incardset {
	border: 1px #d4d4d4 solid;
	overflow: hidden;
}

#cardset .left {
	width: 120px;
	float: left;
	text-align: left;
}

#cardset .right {
	width: 100%;
	margin-left:-120px;
	float: right;
}

#cardset .right .inner {
	margin: 0 20px  0 120px;
	padding-top: 15px;
	text-align: left;
}

#cardset .qrid2016 {
	margin-bottom: 6px;
	padding: 0 5px 0px 5px;
	height: 34px;
	border-bottom: 2px #2D8E89 solid;
}

#cardset .qrid2016 span {
	color: #2D8E89;
	font-size: 24px;
}

#cardset .qrname2016 {
	margin-right: 5px;
	padding: 0 0 0 5px;
}

#cardset .qrname2016 span {
	margin-right: 10px;
	color: #333333;
	font-size: 28px;
}


#idcode, #passcode {
	padding: 0 0 0 8px;
	color: #b50106;
}



/*----------------------------------------------------
	other
---------------------------------------------------*/

.addlink {
	margin: 20px 0;
}

ul.download, ul.download3col {
	width: 100%;
	list-style-type: none;
}

ul.download li {
	width: 49%;
	margin-bottom: 5px;
	padding-right: 20px;
	display: inline-block;
	vertical-align: top;
}

ul.download3col li {
	width: 32.5%;
	margin-bottom: 5px;
	padding-right: 10px;
	display: inline-block;
}

ul.download li:last-child, ul.download3col li:last-child {
	margin-bottom: 0;
}

ul.download li a, ul.download3col li a {
	padding-left: 22px;
	display: inline-block;
	background-image: url(/smp/img/icon_text.gif);
	background-repeat: no-repeat;
	background-position: left 1px;
}

ul.download li.pdf a, ul.download3col li.pdf a { background-image: url(/smp/img/icon_pdf.gif); }
ul.download li.word a, ul.download3col li.word a { background-image: url(/smp/img/icon_word.gif); }
ul.download li.excel a, ul.download3col li.excel a { background-image: url(/smp/img/icon_excel.gif); }
ul.download li.pp a, ul.download3col li.pp a { background-image: url(/smp/img/icon_pp.gif); }
ul.download li.psd a, ul.download3col li.psd a { background-image: url(/smp/img/icon_psd.gif); }
ul.download li.ai a, ul.download3col li.ai a { background-image: url(/smp/img/icon_ai.gif); }
ul.download li.fw a, ul.download3col li.fw a { background-image: url(/smp/img/icon_fw.gif); }
ul.download li.movie a, ul.download3col li.movie a { background-image: url(/smp/img/icon_movie.gif); }
ul.download li.folder a, ul.download3col li.folder a { background-image: url(/smp/img/icon_folder.gif); }
ul.download li.folderin a, ul.download3col li.folderin a { background-image: url(/smp/img/icon_folderin.gif); }

.icon_danger { padding-left: 22px; display: inline-block; background-image: url(/smp/img/icon_danger.png); background-repeat: no-repeat; background-position: left 1px; }


#autologin {
	margin-bottom: 20px;
	padding-left: 26px;
	display: inline-block;
	background:url(/smp/img/bg_check_off.png) left top no-repeat;
	background:url(/smp/img/bg_check_off-b.png) left top no-repeat\9;
	background-size: auto 18px;
}

#autologin:hover {
	cursor: pointer;
}

#autologin.checkon {
	background:url(/smp/img/bg_check_on.png) left top no-repeat;
	background:url(/smp/img/bg_check_on-b.png) left top no-repeat\9;
	background-size: auto 18px;
}

#resultsave #autologin {
	margin: 10px 0 0 0;
}

#passcc {
	display: none;
	margin: 20px 0 -35px 0;
	text-align: right;
}

.passcc2on {
	display: block;
}

.passcc2off {
	display: none;
}

.linktag {
	color:#273589;
}

.linktag:hover {
	cursor: pointer;
}


dl.col2set {
	width: 100%;
	background-color: #f5f5f5;
	border-bottom: 1px #ddd solid;
}

dl.col2set dt {
	width: 35%;
	padding: 10px;
	float: left;
	border-top: 1px #ddd solid;
}

dl.col2set dd {
	margin-left: 35%;
	padding: 10px;
	background-color: #fff;
	border-top: 1px #ddd solid;
}

#link_link {
	margin: 0 0 20px 0;
	text-align: center;
}

#link_link a {
	color: #fff;
}

.bb-box2 ul.nolink li {
	background: #fafafa;
	padding: 10px 20px;
}



/*----------------------------------------------------
	familyRegist
---------------------------------------------------*/

.familyRegist ul.widetype {
	width: 60%;
	margin: 40px auto 0 auto;
}

.familyRegist ul.widetype li {
	width: 46%;
	padding: 0;
	background: #00664C;
	background: -webkit-gradient(linear, left top, left bottom, from(#00A67C), to(#00664C));
	background: linear-gradient(to bottom, #00A67C, #00664C);
	border: 2px #fff solid;
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
	margin: 0 2% 10px 2%;
}

.familyRegist ul.widetype li:hover {
	background: #008463;
	background: -webkit-gradient(linear, left top, left bottom, from(#00C493), to(#008463));
	background: linear-gradient(to bottom, #00C493, #008463);
}

.familyRegist ul.widetype li a {
	background: none;
	text-align: center;
	padding: 11px 0 10px 0;
	color: #fff;
}

.familyRegist .bb-box2 ul.widetype li a::before {
	left: 10px;
	border-top: 2px solid #fff!important;
	border-right: 2px solid #fff!important;
}

.familyRegist .checkbox01 input[type="checkbox"] {
	opacity: 0;
	position: absolute;
	left: 0;
}

.familyRegist .checkbox01 input[type="checkbox"] + label {
	padding-left: 26px;
	background: url(/smp/img/bg_check_off.png) left top no-repeat;
	background-size: auto 18px;
}

.familyRegist .checkbox01 input[type="checkbox"]:checked + label {
	background: url(/smp/img/bg_check_on.png) left top no-repeat;
	background-size: auto 18px;
	
}

.familyRegist .checkbox01 input[type="checkbox"] + label:hover {
	cursor: pointer;
}

.familyRegist .btn07 a span {
	padding: 14px 0 10px 0;
	background-image: none;
	font-weight: normal;
}



/*----------------------------------------------------
	other
---------------------------------------------------*/

.swcontents1, .swcontents2 {
	margin-bottom: 5px;
}

.swcontents1 .swb {
	padding: 10px 10px 8px 28px;
	border:1px #dadada solid;
	font-weight: bold;
	background: #f4f4f4 url(/smp/img/icon_arrowdown.png) 10px center no-repeat;
	background-size: 10px auto;
}
.swcontents1 .swb:hover {
	background-color: #FFF0C4;
	cursor: pointer;
}

.swcontents1 .swopen {
	padding: 10px 10px 8px 28px;
	border:1px #dadada solid;
	font-weight: bold;
	background: #f4f4f4 url(/smp/img/icon_arrowdown2.png) 10px center no-repeat!important;
	background-size: 10px auto!important;
}

.swcontents1 .swc {
	padding: 10px 10px 8px 10px;
	border:1px #dadada solid;
	border-top: none;
}

.swcontents2 .swb {
	margin-bottom: 5px;
	padding: 0 0 0 18px;
	font-weight: bold;
	background: url(/smp/img/icon_arrowdown.png) left center no-repeat;
	background-size: 10px auto;
	cursor: pointer;
}

.swcontents2 .swb:hover  {
	color: #FFA64D;
}

.swcontents2 .swopen {
	padding: 0 0 0 18px;
	font-weight: bold;
	background:url(/smp/img/icon_arrowdown2.png) left center no-repeat!important;
	background-size: 10px auto!important;
}

.datalimit {
	display: none;
}

.limit_disp_on {
	display: block!important;
}

br.spbr {
	display: none;
}

.indent_text {
	margin-bottom: 3px;
	padding-left: 1em;
	text-indent: -1em;
}



/*----------------------------------------------------
	marquee
----------------------------------------------------*/

.marquee {
	width:100%;
	overflow: hidden;
}

.marquee p:after {
	content:"";
	white-space:nowrap;
	padding-right:50px;
}

.marquee p {
	margin:0;
	padding-left:100%;
	display:inline-block;
	white-space:nowrap;
	-webkit-animation-name:marquee;
	-webkit-animation-timing-function:linear;
	-webkit-animation-duration:20s;
	-webkit-animation-iteration-count:infinite;
	-moz-animation-name:marquee;
	-moz-animation-timing-function:linear;
	-moz-animation-duration:20s;
	-moz-animation-iteration-count:infinite;
	-ms-animation-name:marquee;
	-ms-animation-timing-function:linear;
	-ms-animation-duration:20s;
	-ms-animation-iteration-count:infinite;
	-o-animation-name:marquee;
	-o-animation-timing-function:linear;
	-o-animation-duration:20s;
	-o-animation-iteration-count:infinite;
	animation-name:marquee;
	animation-timing-function:linear;
	animation-duration:20s;
	animation-iteration-count:infinite;
}
@-webkit-keyframes marquee {
	from   { -webkit-transform: translate(0%);}
	99%,to { -webkit-transform: translate(-100%);}
}
@-moz-keyframes marquee {
	from   { -moz-transform: translate(0%);}
	99%,to { -moz-transform: translate(-100%);}
}
@-ms-keyframes marquee {
	from   { -ms-transform: translate(0%);}
	99%,to { -ms-transform: translate(-100%);}
}
@-o-keyframes marquee {
	from   { -o-transform: translate(0%);}
	99%,to { -o-transform: translate(-100%);}
}
@keyframes marquee {
	from   { transform: translate(0%);}
	99%,to { transform: translate(-100%);}
}



/*----------------------------------------------------
	footer
----------------------------------------------------*/

#footer{
	min-width:960px;
}

#footer .footerTop{
	width:960px;
	margin:0 auto;
}

#footer .footerTop .pagetop{
	width: 86px;
	margin-bottom:10px;
	padding: 5px 10px;
	background: #38b3ae;
	color: #FFF;
	float: right;
	display: none;
}

#footer .footerTop .pagetop span a{
	padding-left: 15px;
	background:url(/smp/img/icon_pagetop.png) left center no-repeat;
	color:#FFF;
	text-decoration: none;
}

#footer .footerBottom{
	padding:20px 0;
	background:#666666;
}

#footer .footerBottom .footerInr {
	width:960px;
	margin:0 auto 0 auto;
	text-align: center;
	font-size: 0.8em;
}

#footer .footerBottom .footerInr a:link, #footer .footerBottom .footerInr a:visited {
	color: #fff!important;
}

#footer .footerBottom .layoutset {
	margin: 5px 0;
	font-size: 0.8em;
	text-align: center;
}

#footer .footerBottom .layoutset a {
	color:#333333;
}

#footer .footerBottom .layoutset a:link {
	color:#333333;
}

#footer .footerBottom .layoutset a:hover {
	color:#273589;
}

#footer .footerBottom .true {
	display: none;
}

ul.footerMenu {
	margin: 0 0 30px 0;
	padding: 0 10px;
	display: flex;
	justify-content: center;
	gap: 20px 30px;
	font-size: 1.25em;
	text-align: left;
}


/*----------------------------------------------------
	top control
----------------------------------------------------*/
#contents p.pageTop {
	padding-top:25px;
	text-align:right;
}

#topcontrol {
	position: fixed;
	right: 20px;
	font-size: 0;
}

#topcontrol a {
	width:60px;
	display:block;
	height:60px;
	position: relative;
	background-color: rgba(180,180,180,0.5);
	border-radius: 6px;
}

#topcontrol a:hover {
	opacity: 0.6;
}

#topcontrol a::before {
	content: "";
	position: absolute;
	left: 22px;
	top: 30px;
	width: 15px;
	height: 15px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#topcontrol a::after {
	content: "";
	position: absolute;
	left: 22px;
	top: 20px;
	width: 15px;
	height: 15px;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}


/*----------------------------------------------------
	langN
----------------------------------------------------*/

.c-lang {
	position: absolute;
	right: 0;
	top: 0;
	z-index: 10;
}
.c-lang ul {
	background-color: #fff;
	border-radius: 4px;
	overflow: hidden;
}
.c-lang ul li {
	margin: 0;
	position: relative;
	font-size: 0.85em;
	line-height: 1;
	cursor: pointer;
}
.c-lang ul li a {
	padding: 18px 50px 16px 28px;
	text-decoration :none;
	display: block;
	color: #333;
}
.c-lang ul li:not(:last-child) {
	border-bottom: 1px #DFDFD0 solid;
}
.c-lang ul li a:hover {
	background-color: #eee;
}
.c-lang ul li:nth-child(n+2) {
	display: none;
}
.c-lang ul li:first-child {
	padding: 8px 50px 5px 28px;
	border-bottom: 1px #DFDFD0 solid;
	background: url(/smp/img/bg_lang.png) left 8px center no-repeat;
	background-size: 13px auto;
}
.c-lang ul li:first-child::after {
	content: "";
	position: absolute;
	right: 10px;
	top: 7px;
	width: 7px;
	height: 7px;
	border-top: 1px solid #6F6F6F;
	border-right: 1px solid #6F6F6F;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}
.c-lang ul li:first-child:hover {
	opacity: 0.6;
}
.c-lang ul.is-open li {
	display: block!important;
}
.c-lang ul.is-open li:first-child::after {
	display: block!important;
	top: 11px;
	transform: rotate(-45deg);
}





/*----------------------------------------------------*/
/*----------------------------------------------------*/
@media screen and (max-width: 959px){

.sp {
	display: block;
}

.sp2 {
	display: inline-block;
}

.pc {
	display: none;
}

.btn_box div {
	width: 50%;
}

.btn_box div input, .btn_box div span, .btn_box div a {
	min-width: 100%;
}




#header {
	min-width: 100%;
	min-height: 60px;
}

#header .headerInr {
	width:100%;
	position: relative;
}

#header .headerInr h1 {
	font-size: 1.3em!important;
}

#header .headerInr .message {
	padding:0 10px;
	max-width: 200px;
}
#header .headerInr .message span {
	display: none;
}

#logo {
	font-size:0.8em;
	padding-left: 10px;
	padding-right: 110px;
}

#logo img {
	max-width: 240px;
}

#spmenu {
	width: 46px;
	padding: 28px 0 0 1px;
	display: block;
	height: 46px;
	font-size: 11px;
	text-indent: -9999px;
	text-align: center;
	position: absolute;
	top: 3px;
	right: 5px;
	background-image: url(/smp/img/bg_spmenu.png);
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: 46px auto;
	cursor: pointer;
}

#spmenu:hover {
	background-position: 0 -46px;
	/*color: #ffffff;*/
}

#username {
	max-width: 120px;
	padding: 0 5px 0 0 ;
	background-image: none;
	bottom: -3px;
	border-bottom: none;
	font-size:0.7em;
}


#rMenu {
	width: 100%;
}

#rMenu .title {
	font-size:14px;
}

#mainmenu {
	border-radius: 0;
	box-shadow: none;
	-webkit-box-shadow: none;
}


#mainmenu h2 , #main h2 {
	border: none;
	border-bottom: 2px solid #2d8e89;
	border-radius: 0;
	box-shadow: none;
	-webkit-box-shadow: none;
}

#mainmenu h2 {
	position: relative;
	border-bottom: 2px solid #555;
}

.menuup, .menudown {
	width: 20px;
	display: block;
	height: 20px;
	position: absolute;
	top: 9px;
	right: 10px;
	background-position: 0 0;
	background-repeat: no-repeat;
}

.menuup {
	background: url(/smp/img/icon_updown.png) 0 -20px no-repeat;
	background-size: 20px auto;
}
.menudown {
	background: url(/smp/img/icon_updown.png) 0 0 no-repeat;
	background-size: 20px auto;
}

#mainmenu h2 .titletxt {
	margin-right: 10px;
	padding-left: 28px;
	background-image: url(/smp/img/icon_menu0.png);
	background-position: 0 -140px;
	background-size: 20px auto;
	background-repeat: no-repeat;
	height: 20px;
}

#mainmenu {
	width: 100%;
	border-radius: 0; 
}

#mainmenu ul li:last-child {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

#mainmenu ul li a::before {
	top: 22px;
}

#userset {
	display: block;
	border: none;
	border-radius: 0;
	box-shadow: none;
	margin-bottom: 0;
}

#userset .nametitle {
	padding: 8px 10px 0 30px;
}

#userset #use.familylink {
	top: 2px;
}

#contents {
	min-width: 100%;
	padding: 0 0 30px 0;
	background: none;
	background-color: #f4f4f4;
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: 0 0;
}

#contents .contentsInr {
	width:100%;
}

#contents .contentsInr #main {
	clear:both;
	width:100%;
}

#main .section:nth-child(n+2) {
	margin-top: 30px;
}

#contents div.nav {
	margin: 0 auto 20px;
}

#main .value {
	margin: 10px;
	padding: 10px;
	border-radius: 5px;
	border: 1px #ccc solid;
	background-color: #fff;
}

#news0 {
	border: none;
	border-radius: 0;
	box-shadow: none;
	border-top: 2px #CCCCCC solid;
	border-bottom: 2px #CCCCCC solid;
}

.card .value .value {
	padding: 0!important;
	border: none!important;
	background-color: #fff;
}

#now .value p:last-child {
	margin-bottom: 0;
	padding-bottom: 0;	
	border-bottom: none;
}
.card .value p:last-child {
	margin-bottom: 0!important;
	padding-bottom: 5px!important;
	border-bottom: 1px dotted #ccc!important;
}


#access .accessbox-left {
	margin-bottom: 10px;
}

#access .maplink {
	display:none;
}


.freebox .left25, .freebox .left33, .freebox .left50 {
	width: 100%;
	margin-bottom: 10px;
	float: none;
}

ul.download li, ul.download3col li {
	width: 100%;
	display: block;
}



.bb-box {
	width:100%;
}

.bb-box2 ul.widetype li {
	width: 100%;
	margin: 0 0 10px 0;
	float: none;
}

.btn03, .btn04 {
	width: 100%;
	margin: 0 0 10px 0;
	float: none;
}
.btn05 {
	width: 100%;
	margin: 0;
	float: none;
}
.btn07 {
	width: 100%;
	float: none;
}
.btn08 {
	width: 100%;
	float: none;
}
.btnfree1, .btnfree2, .btnfree3, .btnfree4, .btnfree5, .btnfree6, .btnfree7, .btnfree8, .btnfree9, .btnfree10, .btnfree11, .btnfree12,
.btnfree1f, .btnfree2f, .btnfree3f, .btnfree4f, .btnfree5f, .btnfree6f, .btnfree7f, .btnfree8f, .btnfree9f, .btnfree10f, .btnfree11f, .btnfree12f {
	width: 100%;
	/*max-width: 80%;*/
}

.inner_two {
	width: 100%!important;
	margin: 0 0 10px 0!important;
	float: none!important;
}

input.nextb {
	width: 120px!important;
	margin:0 0 0 5px!important;
}

.backb2 {
	width: 80px!important;
	margin:0 5px 0 0!important;
}

.confirm {
	display: block;
	padding: 14px 5px 12px 5px;
}


.formarea .fbox {
	width: 100%;
	margin-bottom: 20px;
}

.formarea .fbox .fboxin1 {
	width: 100%;
	float: none;
	margin-bottom: 10px;
	padding: 2px 0 1px 8px;
	border-left: 2px #2983B8 solid;
}

.formarea .fbox .fboxin2 {
	width: 100%;
	float: none;
}

.formarea .fbox .fboxin2.size2 {
	width: 100%;
	float: none;
}

.rireki_sel .formarea .fbox .fboxin2 {
	width: 100%;
}
.vaccination_sel .formarea .fbox .fboxin2 {
	width: 100%;
}

.formarea .fbox .fboxin3 {
	width: 100%;
	float: none;
	padding: 5px 0 0 0;
	color:#666;
}

.formarea hr {
	margin-bottom: 20px;
	border: none;
}

.formarea input[type="submit"], .formarea2 input[type="submit"], .formarea2 a {
	width: 100%;
}
.formarea .nextb2 {
	width: 60%;
	margin-bottom: 20px;
}

.formarea .backb2 {
	width: 30%;
}

.formarea input[type="text"].confirmemail{
	width: 100%;
}

input#c_address, input#c_address2 {
	width: 100px!important;
}

.ajaxzip .fboxin2.address1, .ajaxzip .fboxin2.address2 {
	width: 100%!important;
}


#price.webpay .item+.readonly span:nth-child(1) {
	width: 60%;
}

#price.webpay .item+.readonly span:nth-child(2) {
	width: 40%;
}

#price.webpay .item+.readonly:last-child {
	display: block;
}


.registAll .inputbox:not(:last-child) {
    margin-bottom: 30px;
}

.registAll .inputbox label {
	width: 100%;
	margin: 0 0 10px 0;
	float: none;
	display: block;
}


.registAll .inputbox .inputparts {
	float: none;
}

.registAll .inputbox input[type="text"], .registAll .inputbox input[type="tel"], .registAll .inputbox input[type="number"], .registAll .inputbox input[type="email"], .registAll .inputbox input[type="password"], .registAll .inputbox select {
	font-size: 16px;
}


dl.col2set dt {
	width: 100%;
	float: none;
}

dl.col2set dd {
	margin-left: 0;
	padding: 10px 10px 25px 10px;
}

dl.col2set dd:last-child {
	padding: 10px 10px 10px 10px;
}



#ask textarea {
	width: 100%;
}

#ask input[type="text"] {
	max-width:85%;
}


#cardset {
	width: 100%;
	margin-bottom: 10px!important;
	border: none;
}
#cardset .incardset {
	border: none;
}
#cardset .qrid2016 {
	height: auto;
}
#cardset .qrid2016 span {
	font-size: 16px;
}

#cardset .qrname2016 span {
	font-size: 20px;
}


#subb {
	display:none;
}

br.spbr {
	display: block;
}



#main #mainmenu {
	margin-bottom:30px;
}

#main #mainmenu .titletxt {
	color: #fff;
}


#slide_menu {
	display: block;
	background-image:url("/smp/img/bg_slidemenuback.gif");
	background-position: 0 0;
	background-repeat: repeat;
}

#slide_spmenu {
	position: absolute;
	width: 100px;
	padding: 24px 0 0 5px;
	right: 5px;
	top: 5px;
	display: block;
	height: 50px;
	text-align: center;
	color: #247399;
	background-image:url("/smp/img/bg_spmenuslide1610.png");
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: 100px auto;
	cursor: pointer;
}


#footer{
	min-width: 100%;
	background-color: #f4f4f4;
}

#footer .footerTop {
	width: 100%;
}

#footer .footerBottom {
  padding: 10px 0 20px 0;
}

#footer .footerBottom .footerInr {
	width:100%;
}

ul.footerMenu {
	flex-wrap: wrap;
	gap: 5px 15px;
	justify-content: flex-start;
	font-size: 1.0em;
}

ul.footerMenu li {
	margin: 0;
	padding: 0 0 0 12px;
	position: relative;
}

ul.footerMenu li a::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 5px;
	height: 5px;
	border-top: 1px solid #3199D6;
	border-right: 1px solid #3199D6;
	-webkit-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%)  rotate(45deg);
}


#topcontrol {
	display:none;
}

#footer .footerTop .pagetop{
	width: auto;
	display:block;
	padding-top: 10px;
	padding-bottom: 10px;
	line-height: 1;
}


#header:has(.c-lang) {
	border-top-width: 24px;
}
.c-lang {
	right: 3px;
	font-size: 0.9em;
	top: -23px;
}
.c-lang ul li:first-child {
	padding: 0 50px 0 28px;
	height: 18px;
    line-height: 18px;
}
.c-lang ul li:first-child::after {
	top: 3px;
	border-bottom: none;
}
.c-lang ul.is-open li:first-child {
	border-bottom: 1px #DFDFD0 solid;
}
.c-lang ul.is-open li:first-child::after {
	top: 8px;
}
.c-lang ul.is-open li:nth-child(n+2) {
	font-size: 1.3em
}




}

