@charset "utf-8";

/* ##### hack ##### */
/*clearfix*/
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
    }
.clearfix {
    display: inline-table;
    min-height: 1%;
    }
/*Hides from MacIE \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/*Hides from MacIE */

.clearboth {
	clear:both;
}

/* ##### 追加リセット ##### */
* {
	background-color:transparent;
}
h1, h2, h3, h4, h5, h6 {
	font-weight:normal;
}
a {
	text-decoration:underline;
}
a img {
	border:0;
}
a.txtlink {
	text-decoration:underline;
	color:#FFFF00;
	font-size:inherit;
}
ul {
	list-style:none;
}

/* ##### 基本 ##### */
html {
	font-size:12px!important;
	line-height:1.5;
	min-height:100%;
	position:relative;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #0e5b7b), color-stop(0.00, #4cabd2));
	background: -webkit-linear-gradient(#4cabd2, #0e5b7b);
	background: -moz-linear-gradient(#4cabd2, #0e5b7b);
	background: -o-linear-gradient(#4cabd2, #0e5b7b);
	background: -ms-linear-gradient(#4cabd2, #0e5b7b);
	background: linear-gradient(#4cabd2, #0e5b7b);
}
body {
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#ffffff;
	padding-top:40px;
	margin-bottom:30px;
}
body#type_index {
	padding-top:0;
}
article {
	width:100%;
	height:100%;
}
section {
	position:relative;
}

/* ##### com ##### */
.com_webfont {
	font-family:font-family: 'Julius Sans One', sans-serif;
}
.com_note {
	display:block;
	padding-left:1em;
	text-indent:-1em;
	font-size:10px;
	color:#ffec6d;
}
section.com_body {
	margin-bottom:30px;
}
.com_lead {
	margin:15px;
}
.com_error {
	margin:15px;
	color:#FFFF00;
}
.com_txt {
	margin-left:15px;
	margin-right:15px;
}
.com_ul_indent li {
	padding-left:1em;
	text-indent:-1em;
}
.com_btn {
	text-align:center;
	text-decoration:none;
	display:block;
	margin:15px 10px;
	color:#FFFFFF;
	font-size:14px;
	padding-top:2px;
	line-height:30px;
	border:#ffffff 1px solid;
	border-radius:17px;
	background-image: -moz-linear-gradient( 90deg, rgb(17,171,223) 47%, rgb(24,189,242) 47%);
	background-image: -webkit-linear-gradient( 90deg, rgb(17,171,223) 47%, rgb(24,189,242) 47%);
	background-image: -ms-linear-gradient( 90deg, rgb(17,171,223) 47%, rgb(24,189,242) 47%);
}
input.com_btn {
	width:100%;
	margin:0;
}
.com_btn_double {
	font-size:0;
	margin:15px 10px;
	text-align:center;
}
.com_btn_double .com_btn {
	display:inline-block;
	margin:0;
	width:48%;
}
.com_btn_double .com_btn:first-child {
	margin-right:4%;
}
.com_btn_strong {
	background-image: -moz-linear-gradient( 90deg, rgb(176,176,12) 47%, rgb(190,190,13) 47%);
	background-image: -webkit-linear-gradient( 90deg, rgb(176,176,12) 47%, rgb(190,190,13) 47%);
	background-image: -ms-linear-gradient( 90deg, rgb(176,176,12) 47%, rgb(190,190,13) 47%);
}
.com_btn_weak {
	text-align:center;
	text-decoration:none;
	display:block;
	margin:15px 10px;
	color:#ffffff;
	font-size:14px;
	padding-top:2px;
	line-height:30px;
	border:#ffffff 1px solid;
	border-radius:17px;
}
h1.com_pagettl {
	height:50px;
	background:#146883;
	padding:2px 15px 0 15px;
	margin-bottom:15px;
	font-size:19.2px;
	letter-spacing:-0.5px;
	font-weight:bold;
	text-align:left;
	line-height:48px;
}
h1.com_txt_ttl {
	padding:30px 15px 15px 15px;
	font-size:20px;
	color:#ffffff;
	text-align:center;
	font-family:font-family: 'Julius Sans One', sans-serif;
	line-height:16px;
}
h1.com_txt_ttl span {
	font-size:12px;
}
a.com_minibtn {
	background-image: -moz-linear-gradient( 90deg, rgb(17,171,223) 47%, rgb(24,189,242) 47%);
	background-image: -webkit-linear-gradient( 90deg, rgb(17,171,223) 47%, rgb(24,189,242) 47%);
	background-image: -ms-linear-gradient( 90deg, rgb(17,171,223) 47%, rgb(24,189,242) 47%);
	text-align:center;
	text-decoration:none;
	display:block;
	height:36px;
	padding:0px 8px 2px 8px;
	border:1px solid #FFFFFF;
	border-radius:18px;
	line-height:34px;
	font-size:12px;
	color:#FFFFFF;
	font-weight:normal;
}
h1.com_txt_ttl + a.com_minibtn {
	position:absolute;
	top:7px;
	right:15px;
}
h2.com_txt_ttl {
	color:#ffffff;
	font-size:14px;
	margin-bottom:18px;
	font-weight:bold;
}
div.com_bodybox {
	margin:15px;
}
#com_additionalLink {
	text-align:center;
}
#com_additionalLink a {
	color:#ffffff;
}

/* ## info cards ## */
.com_infocard {
	color:#333333;
	font-weight:bold;
	font-size:19.2px;
	letter-spacing:-0.5px;
	line-height:1.2;
	text-align:center;
	border:#cccccc 1px solid;
	box-shadow:0 2px 0 rgba(0,0,0,0.2);
	background:#ffffff;
}
.com_infocard_margin {
	margin:15px;
}
.com_infocard_innerpadding {
	margin:15px;
}
.com_infocard_padding {
	padding:15px;
}

/* ## calendar ## */
.com_calendar {
	font-size:16px;
}
.com_calendar h1 {
	text-align:center;
	font-size:19.2px;
	margin:20px 0 0 0;
	font-weight:bold;
}
.com_calendar table {
	width:95%;
	margin:0 auto;
	text-align:center;
	border-top:#f0f0f0 1px solid;
	border-left:#f0f0f0 1px solid;
}
.com_calendar table th, .com_calendar table td {
	line-height:34px;
	border-bottom:#f0f0f0 1px solid;
	border-right:#f0f0f0 1px solid;
	font-weight:normal;
}
.com_calendar table th {
	font-weight:bold;
	color:#166e8a;
	background:#85daf6;
}
.com_calendar table td {
	background:#f3f3f3;
	color:#cccccc;
}
.com_calendar table td.active {
	background:#fcfcfc;
	color:#737373;
}
.com_calendar table td a {
	text-decoration:none;
	color:#cccccc;
}
.com_calendar table td.active a {
	display:block;
	font-weight:bold;
	color:#FFFFFF;
	background-image: -moz-linear-gradient( 90deg, rgb(17,171,223) 47%, rgb(24,189,242) 47%);
	background-image: -webkit-linear-gradient( 90deg, rgb(17,171,223) 47%, rgb(24,189,242) 47%);
	background-image: -ms-linear-gradient( 90deg, rgb(17,171,223) 47%, rgb(24,189,242) 47%);
}
.com_calendar table td.active a.alt1 {
	background-image: -moz-linear-gradient( 90deg, rgb(21,209,163) 47%, rgb(41,235,186) 47%);
	background-image: -webkit-linear-gradient( 90deg, rgb(21,209,163) 47%, rgb(41,235,186) 47%);
	background-image: -ms-linear-gradient( 90deg, rgb(21,209,163) 47%, rgb(41,235,186) 47%);
}
.com_calendar table td.active a.alt2 {
	background-image: -moz-linear-gradient( 90deg, rgb(157,106,189) 47%, rgb(182,137,210) 47%);
	background-image: -webkit-linear-gradient( 90deg, rgb(157,106,189) 47%, rgb(182,137,210) 47%);
	background-image: -ms-linear-gradient( 90deg, rgb(157,106,189) 47%, rgb(182,137,210) 47%);
}

/* ## modal ## */
.modal {
	display:none;
	width:95%;
	position:absolute;
	left:2.5%;
	background:#85daf6;
	border:1px solid #f0f0f0;
	box-shadow:0 2px 0 rgba(0,0,0,0.2);
}
.modal h1 {
	height:30px;
	background:#85daf6;
	padding:2px 15px 0 15px;
	font-size:19.2px;
	letter-spacing:-0.5px;
	font-weight:bold;
	text-align:left;
	color:#166e8a;
	line-height:28px;
	text-align:center;
}
.modal h1 span {
	font-size:75%;
}
/* スケジュール用 */
.modal .modal_schedulebox {
	text-align:center;
	padding:10px 15px;
	font-size:19.2px;
	line-height:1.3;
	color:#333333;
	font-weight:bold;
	letter-spacing:-0.5px;
	position:relative;
	border-bottom:#f0f0f0 1px solid;
	background:#ffffff;
}
.modal .modal_schedulebox_name {
	font-size:60%;
}
.modal .modal_schedulebox .com_btn_double {
	margin:0px;
}
.modal .modal_schedulebox .com_btn {
	font-size:13px;
	line-height:1.2;
	padding:7px 10px 5px 10px;
}
.modal_modalbg {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(255,255,255,0.5);
	z-index:1999;
}

/* ## tab ## */
.com_tabcontainer {
	width:100%;
	border-bottom:#85daf6 solid 10px;
	font-size:0;
}
.com_tab {
	display:inline-block;
	height:34px;
	line-height:32px;
	padding-top:2px;
	font-weight:normal;
	font-size:12px;
	text-align:center;
	text-decoration:none;
	border-radius:5px 5px 0 0;
	border:#ffffff 1px solid;
	border-bottom:none;
	letter-spacing:-0.5;
}
.com_tabcontainer_3 .com_tab {
	width:32%;
	margin-left:2%;
	color:#ffffff;
}
.com_tabcontainer_3 span.com_tab {
	border:0;
	background-color:#85daf6;
	color:#FFFFFF;
}
.com_tabcontainer_3 .com_tab:first-child{
	margin-left:0;
}

/* ## form ## */
form *:focus {
	outline:none;
}
input::-webkit-input-placeholder {
	color:#85daf6;
}
input:-moz-placeholder {
	color:#85daf6;
}
.com_form_required {
	color:#ffff00;
	font-weight:bold;
}
.com_form {
	padding:0px 15px;
	font-size:14px;
}
.com_form div.com_form_row {
	padding:4px 0;
}
.com_form label {
	font-weight:bold;
	line-height:34px;
	/*display:block;*/
	float:left;
}
.com_form input[type="text"] {
	height:34px;
	border-radius:4px;
	border:#85daf6 1px solid;
	width:100%;
	padding:0 5px;
	background-color:rgba(255,255,255,0.1);
	-webkit-appearance:none;
}
.com_form div.com_form_tel input[type="text"] {
	width:32%;
	margin-left:2%;
}
.com_form div.com_form_tel input:first-child {
	margin-left:0;
}
.com_form div.com_form_name input[type="text"] {
	width:49%;
	margin-left:2%;
}
.com_form div.com_form_name input:first-child {
	margin-left:0;
}
.com_form div.com_form_date input[type="text"] {
	width:25%;
	margin-left:2%;
}
.com_form div.com_form_date input:first-child {
	width:46%;
	margin-left:0;
}
.com_form div.com_form_data {
	width:50%;
	float:right;
}
.com_form_confbox div.com_form_data {
	line-height:34px;
}
.com_form_confbox div.com_form_data.com_form_confmail {
	width:100%;
	float:none;
	clear:both;
	line-height:14px;
	padding-bottom:10px;
	overflow:hidden;
	text-overflow:ellipsis;
}
.com_form div.com_form_data_long {
	width:72%;
	text-align:right;
}
.com_form select {
	height:34px;
	border-radius:4px;
	border:#85daf6 1px solid;
	padding:0 2px;
	background-color:rgba(255,255,255,0.1);
	-webkit-appearance:none;
}
.com_form .com_btn_weak {
	width:100%;
	margin:0;
}


/* ## help box ## */
#com_help {
	padding-top:30px;
}
#com_help h1 {
	padding:10px 15px;
	background:#084f66;
	color:#ffffff;
	font-weight:bold;
}
#com_help a {
	display:block;
	padding:10px 15px;
	color:#ffffff;
	border-bottom:#e0e0e0 1px solid;
}

/* ##### header ##### */
header {
	height:40px;
	width:100%;
	position:absolute;
	top:0;
	left:0;
	background:transparent;
}
header a#logo {
	display:block;
	position:absolute;
	width:189px;
	left:6px;
	top:10px;
}
header a#logo img {
	display:block;
	width:100%;
}
header a#mypage {
	display:block;
	width:40px;
	height:40px;
	position:absolute;
	top:0px;
	right:42px;
}
header a#menu {
	display:block;
	width:40px;
	height:40px;
	position:absolute;
	top:0px;
	right:3px;
}

/* ##### footer ##### */
footer {
	position:absolute;
	bottom:0;
	height:30px;
	text-align:center;
	width:100%;
	line-height:30px;
	background-color:#0c3f54;
	font-size:10px;
}

/* ##### menu modal ##### */
.menumodal_modalbg {
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	min-height:100%;
	background:rgba(59,206,255,0.95);
	z-index:1999;
}
#menumodal {
	display:none;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	min-height:100%;
	z-index:2000;
	background:none;
}
#menumodal h1 {
	font-size:16px;
	color:#ffffff;
}
#menumodal .menumodal_list {
	display:block;
	width:100%;
	color:#ffffff;
	height:50px;
	padding:2px 10px 0 10px;
	line-height:48px;
	border-bottom:1px solid #79d4f2;
}
#menumodal .menumodal_group {
	background:none;
	border-bottom:19px solid #79d4f2;
}
#menumodal .menumodal_group:last-child {
	border-bottom:none;
}
#menumodal .menumodal_group a {
	text-decoration:none;
	font-size:19.2px;
}
#menumodal a#menumodal_close {
	display:block;
	width:40px;
	height:40px;
	position:absolute;
	top:2px;
	right:2px;
}