/* hsms common css style ver 3.3
0. Reset Section
1. Layout Section
2. Basic Tag Section       
3. Element Section       
	3-1 button
	3-2 title
	3-3 some styles
	3-4 commons
4. header section       
	4-2 Ground Navigation
5. side section    
6. footer section 
7. flash section  
8. form section
9. shared blocks
	9-1 topic (index and doc/topic)
	9-5 banner ( index, present/index and event/index)
 	9-6 faq (faq inquiry)
	9-7 member
10. sub blocks
@import url('https://fonts.googleapis.com/css?family=Lato&display=swap');
*/

@charset "utf-8";

/* -----------------------------------------------------------------------------------------------
	0. Reset Section
-------------------------------------------------------------------------------------------------- */
  
* {margin:0; padding:0;}
html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,small, strong, sub, sup, var,b, i,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, figcaption, figure,footer, header, hgroup, menu, nav, section, summary,time, mark, audio, video,header,footer,aside,address {margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent;}
html {background:#FFF; color:#000;}
* html body {font-size:small;}
*:first-child+html body {font-size:small;}
img {border:0; margin:0; vertical-align:bottom;}
h1,h2,h3,h4,h5,h6 {font-size:100%; font-weight:bold; }
ul,dl,ol {text-indent:0;}
li {list-style:none;}
address,caption,cite,code,dfn,em,strong,th,var {font-style:normal; font-weight:normal;}
sup {vertical-align:text-top;}
sub {vertical-align:text-bottom;}
input,textarea,select {font-family:inherit; font-size:inherit; font-weight:inherit;}
* html input,* html textarea,* html select {font-size:100%;}
*:first-child+html+input,*:first-child html+textarea,*:first-child+html select {font-size:100%;}
table {border-collapse:collapse; border-spacing:0; font-size:inherit;}
th,td {text-align:left; vertical-align:top;}
caption {text-align:left;}
pre,code,kbd,samp,tt {font-family:monospace;}
* html pre,* html code,* html kbd,* html samp,* html tt {font-size:100%; line-height:100%;}
*:first-child+html pre,*:first-child html+code,*:first-child html+kbd,*:first-child+html+samp,*:first-child+html tt {font-size:108%; line-height:100%;}
input,select,textarea {font-size:100%; font-family:Verdana, Helvetica, sans-serif;}
article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary { display:block;}
*, *:before, *:after { box-sizing:border-box; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; }


/* -----------------------------------------------------------------------------------------------
	1. Layout Section
-------------------------------------------------------------------------------------------------- */

html {
    background:#ffffff;
	color:#000000;
	font-family:'Lato', "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:62.5%;
	-webkit-text-size-adjust:100%;
	font-feature-settings:"palt";
}
body {
	font-size:1.4rem;
	line-height:1.7rem;
	text-align:center;
	width:100%;
} 

.wrap {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
	text-align: left;
}



.layout_2pain {
	display: flex;
	align-items: flex-start;
	flex-direction: row-reverse;
	border-bottom: 3px solid #000000;
	margin-bottom: 50px;
}
.layout_side {
	width: 220px;
	margin-right: 50px;
	margin-bottom: 40px;
	clear:both;
}
.layout_main {
	flex: 1;
	margin-bottom: 80px;
}

.layout_sub {
	clear:both;
	width:100%;
}

.layout_footer {
	clear:both;
	overflow:hidden;
}

.layout_smpMenu {
	display: none;
}
.smp {
	display:none;
}

.noscript {
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index:300;
    background:#f0f0f0;
}



.inner_wrap {
	padding: 15px 0;
}

/* -----------------------------------------------------------------------------------------------
	2. Basic Tag Section       
-------------------------------------------------------------------------------------------------- */

a,a:visited {
	color:#009999;
	text-decoration:none;
	transition:0.5s;
}
a:hover {
	color:#33ccff;
	text-decoration:none;
}
a:hover img {
	filter:alpha(opacity=80); -moz-opacity:0.80; opacity:0.80;
	transition:0.5s;
}
img {
	vertical-align:middle;
	line-height:1.0;
	width: 100%;
}
table th img, table td img {
	vertical-align:middle;
}
.clear {
	clear:both;
}
.click {
	cursor:pointer;
}
br.clear {
	clear:both;
	height:0;
}
strong {
	font-weight:bold;
}

label {
	display:inline-block;
	vertical-align:middle;
}



/* -----------------------------------------------------------------------------------------------
	3. Element Section       
-------------------------------------------------------------------------------------------------- */
.w5 { width: 5%!important; }
.w10 { width: 10%!important; }
.w15 { width: 15%!important; }
.w20 { width: 20%!important; }
.w25 { width: 25%!important; }
.w30 { width: 30%!important; }
.w40 { width: 40%!important; }
.w50 { width: 50%!important; }
.w60 { width: 60%!important; }
.w70 { width: 70%!important; }
.w80 { width: 80%!important; }
.w90 { width: 90%!important; }
.w100 { width: 100%!important; }

.mb10 { margin-bottom: 10px!important; }
.mb20 { margin-bottom: 20px!important; }
.mb30 { margin-bottom: 30px!important; }
.mb40 { margin-bottom: 40px!important; }
.mb50 { margin-bottom: 50px!important; }
.mb60 { margin-bottom: 60px!important; }
.mb70 { margin-bottom: 70px!important; }
.mb80 { margin-bottom: 80px!important; }
.mb90 { margin-bottom: 100px!important; }
.mb100 { margin-bottom: 80px!important; }

.center {
	text-align: center;
	margin: 0 auto;
}
.right {
	text-align: right;
}

/* 3-1 button */
.btn {
	width:100%;
	margin:8px auto;
	background-color:#d8d8d8;
	color:#000000;
	border-radius:16px;
	border:1px solid #c8c8c8;
	text-align:center;
	padding:8px 0 6px 0;
	font-size:1.5rem;
	line-height:1.75;
}
.btn a {
	color:#000000;
}
.btn:hover {
	background-color:#eeeeee;
	color:#000000;
	transition-duration:0.5s;
	cursor:pointer;
}
.btn:hover a {
	color:#000000;
	text-decoration:none;
	transition-duration:0.5s;
}
	.btn_thin { padding:6px 0 4px 0; font-size:1.2rem; }

	.btn_orange { background: linear-gradient(#FE9133,  #FF6523); color:#ffffff!important; border:none; } 
	.btn_orange a { color:#ffffff!important; }
	.btn_orange:hover { background:#eeac33!important; }

	.btn_narrow { width:20%; float:left; margin-right:15px; }
	.btn_wide {
		padding: 12px 10px;
		font-size: 2.2rem;
	}


	.btn_manager { background: linear-gradient(#FE9133,  #FF6523)!important; color:#ffffff!important; border:none; } 
	.btn_manager a { color:#ffffff!important; }
	.btn_manager:hover { background:#FF6523!important; }


	.btn_member { background: linear-gradient(rgb(121, 189, 244),  rgb(73, 141, 197))!important; color:#ffffff!important; border:none; } 
	.btn_member a { color:#ffffff!important; }
	.btn_member:hover { background:#5176c1!important; }

	.btn_com { background: linear-gradient(#007b04,  #014503)!important; color:#ffffff!important; border:none; } 
	.btn_com a { color:#ffffff!important; }
	.btn_com:hover { background:#014503!important; }


	
.btn_bar {
	width:100%;
	background-color:#ffffff;
	color:#009999;
	text-align:center;
	padding:4px 0 3px 0;
    border:2px solid #009999;
	border-radius:5px;
	font-size:1.7rem;
}
.btn_bar a {
	color:#009999;
}
.btn_bar:hover {
	background-color:#ffff99;
	color:#444444;
	transition-duration:0.5s;
	cursor:pointer;
}
.btn_bar:hover a {
	color:#444444;
	text-decoration:none;
	transition-duration:0.5s;
}
.btn_bar_low {
	padding:8px 0 6px 0;
	font-size:1.3rem;
}



.btn_submit {
	width:100%;
	background-color:#009999;
	background: linear-gradient(#009999,  #007474);
	color:#ffffff;
	text-align:center;
	padding:12px 0 11px 0;
	border-radius:16px;
	font-size:1.7rem;
	border:none;
	margin-bottom:15px;
}
.btn_submit a {
	color:#ffffff;
	display:block;
}
.btn_submit:hover {
	color:#FFFF66;
	background: linear-gradient(#01b0b0,  #008d8d);
	transition:0.5s;
	cursor:pointer;
}
.btn_submit:hover a {
	color:#FFFF66;
	text-decoration:none;
	transition:0.5s;
}


/* embed youtube */
.embed_movie {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
    margin-bottom: 40px;
}
.embed_movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	border: none;
}

/* ------------------------- headers --------------------- */


.layout_main h1,
.h1 {
	border-radius:4px;
	font-size:2.2rem;
	line-height:1.2;
	padding:32px 4px;
	text-align:center;
	margin-bottom:15px;
	color:#808080;
	background:#f9f9ed;
}
.layout_main h2,
.h2 {
	border-top:2px solid #666666;
	border-bottom:2px solid #666666;
	background:#ffffec;
	background: linear-gradient(#ffffec,  #ffffbe);

	padding:8px;
	margin:0 0 40px 0;

	font-size:1.8rem;
	color:#000000;
	text-align:center;
	line-height:1.5;}

.layout_main h3,
.h3 {
	font-weight:bold;
	font-size:2.2rem;
	line-height:1.25;
	text-align:left;
	border-left:5px solid #444;
	padding-left:12px;
	margin-bottom:16px;
}
.layout_main h3 a,
.h3 a {
    color:#ffffff;
}

.layout_main h4,
.h4 {
	color:#e75a9c;
	padding:10px 0 8px 0;
	border-bottom:1px dotted #edc5d8;
	margin-bottom:15px;
	text-align:left;
	line-height:1.5;
	font-size:1.7rem;
	font-weight:normal;

	margin-top: 30px;
}
.layout_main h4:first-child, h4:first-child {
	margin-top: 10px;
}
.layout_main h5,
.h5 {
	font-size:1.6rem;
	font-weight: bold;
	line-height:1.5;
	margin: 20px 0 10px 0;
}


.layout_main p,
.p {
	line-height: 1.75;
}


/* 3-3 some styles */
.flex_wrap {
    display:flex;
}
.flex_block {
    flex:0 1 auto;
}
.section {
	margin-bottom:50px;
}

.section p {
		font-size: 1.4rem;
		line-height: 1.5;
		margin-bottom: 10px;
}

.block {
	overflow:hidden;
	padding:8px;
	border:1px solid #e7e7e7;
	background:#ffffff;
	border-radius:4px;
	margin-bottom:20px;
}


.link_inner {
    margin:5px 0;
    background-color:#009999;
    width:110px;
    color:#ffffff;
	border-radius:4px;
	padding:2px 4px 2px 28px;
    font-size:1.2rem;
    background-image:url(/img/common/icon_linkinner.png);
	background-repeat:no-repeat;
	background-position:6px center;
}
.link_inner a {
    color:#ffffff;
}
.link_inner:hover {
	background-color:#ffff99;
	color:#009999;
	transition-duration:0.5s;
	cursor:pointer;
}
.link_inner:hover a {
	color:#009999;
	text-decoration:none;
	transition-duration:0.5s;
}

.link_liner {
	display: block;
	margin:5px 0;
	text-align:right;
}
.link_liner:before {
	content: url(/img/common/icon_arrow.png);
	display: inline-block;
	vertical-align: middle;
	transform: scale(0.5);
}

.red {
	color:#ff0000;
}
.freedial {
	background-image:url(/img/common/icon_freedial.png);
	background-repeat:no-repeat;
	background-position:left center;
	padding:3px 0 0 22px;
}

.banner_slick {
	display: none;
  }
  .banner_slick.slick-initialized {
	display: block;
  }
  


/* 3-6 list */

.layout_main ul,
.ul_list {
	margin:10px 0 20px 0;
}

.layout_main ul > li,
.ul_list > li {
	list-style:disc;
	list-style-position:outside;
	line-height:135%;
	margin:0 0 10px 25px;
}

.ol_list {
    margin:0 0 10px 50px;
}

.ol_list > li {
	margin-bottom:6px;
	color:#000;
	list-style:decimal;
	list-style-position:outside;
	line-height:1.5;
}
.ol_sublist {
	margin-bottom:20px;line-height:1.0;
}
.ol_sublist > li {
	margin-bottom:0;
	line-height:1.0;
}

.dl_list {
    margin:10px 0 20px 0;
}
.dl_list dt {
	margin:25px 0 15px 13px;
}
.dl_list dd {
	margin:0 0 10px 32px;
	line-height:1.5;
}


/* page nation */

.pagination {
    width:100%;
	list-style-type:none;
	padding:0;
	text-align:center;
	margin:20px auto;
	overflow:hidden;
}
.pagination > li {
	float:left;
	width:32px;
	padding:8px 0 6px 0;
	margin:0;
	background:#e8ffff;
	border-top:1px solid #c2c2c2;
	border-bottom:1px solid #c2c2c2;
	border-left:1px solid #c2c2c2;
	font-size:1.5rem;
	color:#159e92;
}
.pagination .active {
	background:#159e92;
	color:#ffffff;
} 

.pagination > li:hover {
	background:#9acfb5;
	transition-duration:0.5s;
	cursor:pointer;
}
.pagination > li:hover a {
	transition-duration:0.5s;
	color:#ffffff;
}
.pagination .prev, .pagination .next  {
    width:120px;
}

.pagination .first {
	width:120px;
	border-top-left-radius:4px; 
	border-bottom-left-radius:4px;
}
.pagination .last {
	width:120px;
	border:1px solid #c2c2c2;
	border-top-right-radius:4px;
	border-bottom-right-radius:4px;
}
.paginator + *  {
	clear:both;
}


.disabled {
	display:none;
}



/* -----------------------------------------------------------------------------------------------
	4. header section       
-------------------------------------------------------------------------------------------------- */

.layout_header {
	overflow: hidden;
	margin-bottom: 40px;
}

.header_belt {
	overflow: hidden;
	background:#e6f7ed;
	padding: 0;
	border-top: 6px solid #009999;
}
.header_belt h2 {
	width: 100%;
	color: #009999;
	font-size: 1.4rem;
	padding: 3px;
}
.header_belt_btn {
	display: inline-block;
	margin: 5px 0 10px 10px;
	border-radius: 4px;
	padding:  8px 12px;

	font-size: 1.4rem;
	font-weight: normal;
	transition: 0.5s;
}




.header_site {
	overflow: hidden;
}



.header_titlesection {
	width: 45%;
	float: left;
}

.header_controll {
	width: 55%;
	float: right;
	padding-top: 10px;
	text-align: right;
}
.header_controll > a {
	font-size: 1.4rem;
	font-weight: bold;
	color: #000000;
	border-left: 4px solid #000000;
	padding: 0 30px 0 5px;
}








/* bread menu */
.breadmenu {
	clear: both;
    background: #ececec;
	border-top: 4px solid #009999;
	color: #6F6F70;
	font-size: 1.1rem;
	vertical-align: top;
	padding: 2px 0 0 0;
}
.breadmenu img {
	width: 24px;
}
.breadmenu a, .breadmenu a:visited {
	color: #6F6F70;
}

.social {
	float:right;
	text-align: right;
	border: 1px solid #f00;
}

.smp_menu {
	display:none;
}


/* -----------------------------------------------------------------------------------------------
	6. footer section 
-------------------------------------------------------------------------------------------------- */
   
.pagetop {
	position:fixed;
	bottom:0;
	right:0;
	display:none;
	overflow:hidden;
	width:50px;
	height:50px;
    z-index:100;
}
.pagetop a {
	filter:alpha(opacity=30); -moz-opacity:0.3; opacity:0.3;
}
.pagetop a:hover {
	filter:alpha(opacity=100); -moz-opacity:1; opacity:1;
}




/* footer */

.layout_footer {
	width: 100%;
	overflow: hidden;

	color:#000000;
	padding: 10px 20px 20px 20px;
	background:#e0e0e0;
	font-size:1.2rem;
	text-align:left;

	
}


.footer_menu {
	width:100%;
	overflow: hidden;
	margin: 0 auto 10px auto;
	padding: 20px;
	border-bottom: 1px solid #bbbbbb;
}
.footer_menu h5 {
	text-align: center;
	margin: 0 0 20px 0;
}
.footer_menu li {
	display: inline-block;
	width: 180px;
	vertical-align: top;
	background-image:url(/img/common/icon_arrow.png);
	background-repeat:no-repeat;
	background-position:left top;
	background-size: 14px;
	padding-left:16px;
	margin:0 20px 8px 0;
}
.footer_menu a, .footer_menu a:visited {
	color:#000000;
}
.footer_menu a:hover {
	text-decoration:underline;
}


.footer_address {
	clear: left;
    margin: 20px auto;
    text-align: center;
}

.footer_address img {
    width: 500px;
    margin-bottom: 10px;
}


/* ssl message */
.footer_secure {
	text-align:center;
	font-size:1.1rem;
	color:#888888;
	padding-bottom: 10px;
	border-bottom: 1px solid #666666;
	margin-bottom:10px;
}

.copyright {
	padding:22px 0;
    background:#333333;
	
}
.footer_copyright {
	text-align:center;
	font-size:1.1rem;
	color:#888888;
}

/* -----------------------------------------------------------------------------------------------
	7. flash section 
-------------------------------------------------------------------------------------------------- */
	
#flashMessage {
	position:fixed;
	top:70px;
	left:10%;
	background:rgba(0,0,0, 0.85);
	width:80%;
    margin:0 auto;
	min-height:140px;
	border-radius:10px;
	padding:130px 20px;
	text-align:center;
	color:#fff;
	z-index:10;
	font-size:2.2rem;
	line-height:2.0;
}
#flashMessage a {
	color:#fff;
}

/* -----------------------------------------------------------------------------------------------
	8. form section
-------------------------------------------------------------------------------------------------- */

.caution_info {
	margin-bottom:20px;
    font-size:1.7rem;
}
.cautionBlock {
	width:100%;
	margin:0px 0px 20px 0px;
	padding:0px;
	border:1px solid #FC6;
	background:#FFFFF5;
	font-size:15px; font-size:1.4rem;
}
.cautionBlock h3 {
	border-bottom:1px solid #FC6;
	padding:4px;
    color:#FF6666;
	font-size:1.3rem;
	font-weight:bold;
	background:#FFFFEE;
}
.cautionBlock ul {
	margin:10px 15px 8px 15px;
}
.cautionBlock li {
	list-style:disc;
	margin:8px 0px 0px 20px;
}




.inquieryFlow {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}
.inquieryFlow_li {
    flex: 0 1 auto;
	background: #f8f8f8;
    color: #000000;
    width: calc(100%/3);
    text-align: center;
    padding: 15px 10px 13px 10px;
    list-style: none!important;
	font-size: 1.6rem;
	background-image: url(/img/common/icon_tri_right.png);
	background-repeat: no-repeat;
	background-size: 24px;
	background-position: right center;
	border-top: 3px solid #e4e4e4;
	border-bottom: 3px solid #e4e4e4;
}
.inquieryFlow_li span {
	color: #ff6600;
	margin-right: 1em;
	font-weight: bold;
}
.inquieryFlow_li_step1 {
	background-color: #f8f8f8;
}
.inquieryFlow_li_step2 {
	background-color: #eeeeee;
	background-image: url(/img/common/icon_tri_right.png);
	border-top: 3px solid #cbcbcb;
	border-bottom: 3px solid #cbcbcb;
}
.inquieryFlow_li_step3 {
	background: #dddddd;
	background-image: none;
	border-top: 3px solid #b3b3b3;
	border-bottom: 3px solid #b3b3b3;
	
}
.inquieryFlow_li_active {
	border-top: 3px solid #ff6600;
	border-bottom: 3px solid #ff6600;
	background-color:#ffd29f;
}

 

input.radio {
	margin-right:5px;
}


input[type='text'], 
input[type='email'],
input[type='password'],
input[type='file'],
textarea
{
	font-size:1.5rem;
	color:#06F;
	padding:6px;
	border:1px solid #DDD;
	margin:0;
	width:100%;
}
input[type='checkbox'], input[type='radio'] {
	margin-right:4px;
}
input[type='text'],textarea {
	color:#06C;
}
input:focus, textarea:focus, select:focus {
	background-color:#FFC;
}





.formBlock {
	width:100%;
	margin:20px 0;
}
.formBlock table {
	border-collapse:collapse;
	list-style-position:inside;
	margin-bottom:10px;
	width:100%;
	font-size:1.4rem;
}
.formBlock td {
	text-align:left;
	border:solid 1px #CCCCCC;
	padding:12px 20px;
	line-height:150%;
}
.formBlock th {
	background:#F5F5F5;
	color:#333333;
	border:solid 1px #CCCCCC;
	padding:12px 10px 10px 10px;
	line-height:150%;
	width:30%;
	vertical-align: middle;
}

.formBlock th.head {
	background:#333333;
	color:#ffffff;
	font-weight:bold;
	border:solid 1px #CCCCCC;
	padding:6px 20px;
}
.formBlock .caution {
    margin-top:8px;
    color:#555555;
    font-size:1.2rem;
    line-height:1.3;
}

.reqMessage {
	display: inline-block;
    background:#ff6c00;
    color:#ffffff;
    font-size:1.1rem;
    padding:2px 8px 1px 8px;
    border-radius:2px;
	margin: 0 5px;
}

.formBlock #address1 {
    border:none;
    width:39%;
    border-bottom:1px solid #d0d0d0;
}
.formBlock #address2 {
    width:59%;
}

#policy {
	font-size:1.1rem;
	margin:30px 0 0 0;
}
.formBlock .submit {
	margin:15px 0;
	color:#ff8888;
}
.error-message {
	color: #a04c4c;
}

.checkbox {
    margin: 0 0 12px 0;
}
.checkbox > label {
	color: #333333;
}


.select {
	overflow: hidden;
	width: 90%;
	margin: 10px 0;
	text-align: center;
}
.select select {
	width: 100%;
	padding-right: 1em;
	cursor: pointer;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}
.select select::-ms-expand {
    display: none;
}
.select {
	position: relative;
	border: 1px solid #bbbbbb;
	border-radius: 2px;
	background: #ffffff;
}
.select::before {
	position: absolute;
	top: 0.8em;
	right: 0.9em;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid #666666;
	pointer-events: none;
}
.select:after {
	position: absolute;
	top: 0;
	right: 2.5em;
	bottom: 0;
	width: 1px;
	content: '';
	border-left: 1px solid #bbbbbb;
}
.select select {
	padding: 8px 38px 8px 8px;
	color: #666666;
}


/* -----------------------------------------------------------------------------------------------
	9. table blocks
-------------------------------------------------------------------------------------------------- */
.table {
	border-collapse:collapse;
	list-style-position:inside;
	margin-bottom:10px;
	width:100%;
	font-size:1.4rem;
}
.table td {
	text-align:left;
	border:solid 1px #CCCCCC;
	padding:10px;
	line-height:150%;
	vertical-align:middle;
}
.table th {
	background:#F5F5F5;
	color:#333333;
	border:solid 1px #CCCCCC;
	padding:12px 10px 10px 10px;
	line-height:150%;
	width:30%;
	vertical-align:middle;
	font-weight: bold;
}
.table th.head {
	background:#FFEEEE;
	color:#FF6666;
	font-size:1.2rem;
	border:solid 1px #CCCCCC;
	padding:3px;
	font-size:1.4rem;
}



/*
    hsms_page
*/





/* ------------------------------ search block ---------------------- */
.search_block {
    border:1px solid #d0d0d0;
    background: #f0f0f0;
	padding: 15px;
}

.search_block h3 {
    font-size: 1.5rem;
    font-weight: bold;
    color: #444444;
}
.search_item {
    margin-bottom: 30px;
}
.search_block .text {
    margin: 10px 0;
}



/* 9-1-2 index topic */
.index_topic {
	margin:0 auto 60px auto;
	width: 100%;
}


/* 9-1 topic (index and doc/topic) */
.topic_table {
	width: 100%;
}
.topic_table tr {
	border-top:1px dotted #ff9900;
	border-bottom:1px dotted #ff9900;
	width: 100%;
}
.topic_table th {
    width: 200px;
	vertical-align: middle;
    font-size:1.3rem;
	color:#888888;
	line-height:1.25;
	padding: 8px;
}
.topic_table td {
	width: auto;
	vertical-align: middle;
    color:#333333;
	font-size:1.3rem;
	line-height:1.25;
	padding: 8px;
}
.topic_table td a, .topic_table td a:visited {
    color:#009999;
}
.topic_label {
    background:#ff9900;
    color:#ffffff;
    padding:4px 8px;
	border-radius:3px;
    font-size:1.2rem;
}

.topic_content {
	margin: 50px 20px 60px 20px;
	font-size: 1.6rem;
	line-height: 1.75;
}

/* entry */
.page_summry {
	background: #e8e9b8;
	padding: 16px 24px;
	margin: 0 0 20px 0;
}
.page_summry p {
	font-size: 1.5rem;
	line-height: 1.5;
	margin: 10px 0;
}
.reqMessage {
	display: inline-block;
	margin: 0 2px;
    background:#ff6c00;
    color:#ffffff;
    font-size:1.1rem;
    padding:3px 5px 2px 5px;
    border-radius:3px;
}
.freeMessage {
	display: inline-block;
	margin: 0 2px;
    background:#257c3b;
    color:#ffffff;
    font-size:1.1rem;
    padding:3px 5px 2px 5px;
    border-radius:3px;
}

.request_btn {
	width: 100%;
	display: flex;
	justify-content:space-between;
	/*position: fixed;
	bottom :0;
	left: 0;
	*/
}
.request_btn .btn {
	/*
	width: 45%;
	float: left;
	margin: 0 2%;
	*/
	width: 48%;
	flex: 0 1 auto;
}

/* toppage catch belt */
.top_catchbelt {
	overflow: hidden;
	background: #009999;
	padding: 7px 0;
}
.top_catchbelt p {
	display: inline-block;
	color: #ffffff;
	text-align: right;
}
.top_catchbelt h3 {
	display: inline-block;
	font-size: 2.0rem;
	color: #ffff00;
	line-height: 1.4;
}

/* index slide show */
.top_maintitle {
    margin-bottom: 30px;
	overflow: hidden;
}
.banner_slick {
	width: 70.5%;
	float: left;
}

.banner_product {
	width: 29.5%;
	float: right;
}


.slick-dots li button:before {
    font-size:16px!important;
}
.slick-dots {
    bottom: -35px!important;
}
.top_maintitle_message {
	width: 80%;
	margin: 0 auto 0 auto;

	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: normal;
	font-size: 2.0rem;
	line-height: 1.5;
	color: #444444;
}


.banner_slick_sum {
    margin: 0 auto 30px auto;
    width: 100%;

}
.banner_slick_sum div {
    width: 130px;
    display: inline-block;
    margin: 2px;
}





/* product box */
.banner_product_slide {
	width: 100%;
	display: flex;
	flex-wrap: wrap;

    justify-content: space-between;
}
.banner_product_box {
	width: 33.3%;
    position: relative;
    overflow: hidden;
}

.banner_product_box:before {
	content: "";
    padding-top: 100%;
    display: block;
}
.banner_product_box img {
	width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
}




/* index movie */
.section_index_movie {
    background: #009999;
	padding: 15px;
}
.index_movie_wrap {
    display: flex;
}
.index_movie_each {
    width: 48%;
    flex: 0 1 auto;
    margin: 1%;
}
.iframe-wrapper {
    width: 100%;
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}
.iframe-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.section_index_movie h2 {
	background: #ffffff;
	color: #009999;
	margin-bottom: 15px;
	font-size: 2.2rem;
}
.section_index_movie h3 {
	border:none;
	text-align: center;
	color: #ffffff;
	
}



@media screen and (max-width: 850px) {

.header_titlesection, .header_controll {
	width: 100%;
	float: none;
}

}



@media screen and (max-width: 640px) {

.wrap {
	padding: 0 5px;
}


.layout_header {
    position: relative;
	overflow: hidden;
	margin-bottom: 20px;
}

.header_belt {
    position: fixed;
    bottom: 0;
    left:0;
    width: 100%;
    z-index: 10;
	overflow: hidden;
	background: none;
	border: none;
}
.header_belt h2 {
	display: none;
}

.header_belt_btn {
	float: none;
    display: inline-block;
    width: 43%;
    margin: 2px 0;
	font-size: 1.3rem;
	padding: 4px 0 3px 0;
	background: #009999;
	border-radius: 4px;
	color: #ffffff;
    text-align: center;
}
.header_belt_btn_mem {
	background: #e06c00;
}
.header_belt_btn a, .header_belt_btn a:visited {
	color: #ffffff;
}


.header_site {
	width: 100%;
	overflow: hidden;
    border-top: 4px solid #009999;
}

.header_titlesection {
	width: 100%;
    padding-right: 40px;
}

.header_controll {
	display: none;
}






.smp_menu {
	display: block;
	position: fixed;
	top:0;
	right: 0;
	width: 45px;
	z-index: 100;
	opacity: 0.7;
}
.layout_smpMenu {
	position: fixed;
	top:0;
	left: 0;	
	z-index: 90;
	background: rgba(0, 0, 0, 0.7);
	width: 100%;
	height: 100%;
	text-align: center;
	padding: 60px 20px 0 20px;
}





.layout_2pain {
	display: block;
	align-items: none;
	flex-direction: none;
	width: 100%;
	border-bottom: 3px solid #000000;
	margin-bottom: 50px;

}
.layout_side {
	width: 100%;
	margin-bottom:0 0 40px 0;
	clear:both;

}
.layout_main {
	flex: none;
	margin-bottom: 80px;
}

.footer_address img {
    width: 100%;
}




/* 9-1 topic (index and doc/topic) */
.index_topic {
	margin:0 0 40px 0;
	width: 100%;
}
.topic_table tr {
	border-top:1px dotted #ff9900;
	border-bottom:1px dotted #ff9900;
	width: 100%;
}
.topic_table th {
	display: block;
    width: 100%;
    font-size:1.3rem;
	color:#888888;
	line-height:1.25;
	padding: 8px;
}
.topic_table td {
	display: block;

	width: auto;
    color:#333333;
	font-size:1.3rem;
	line-height:1.25;
	padding: 8px;
}
.topic_table td a, .topic_table td a:visited {
    color:#009999;
}
.topic_label {
    background:#ff9900;
    color:#ffffff;
    padding:4px 8px;
	border-radius:3px;
    font-size:1.2rem;
}

.topic_content {
	margin: 50px 20px 60px 20px;
	font-size: 1.6rem;
	line-height: 1.75;
}





/* index slide show */
.top_maintitle {
    margin-bottom: 40px;
}
.slick-dots li button:before {
    font-size:11px!important;
}
.banner_slick_sum {
	display: none;
}
.top_maintitle_message {
	width: 100%;
	margin: 0 auto 30px auto;
	font-size: 1.4rem;
	line-height: 1.6;
}



/* request_btn */

.request_btn {
	display:none;
}
.section_index_movie {
	padding: 10px ;
}
.index_movie_wrap {
    display: block;
}
.index_movie_each {
    width: 100%;
    flex: none;
    margin: 0 0 30px 0;
}




}


/* fin */ 