@charset "UTF-8";

/* ===============================
	common base style
=============================== */
html,body{
    height: 100%;
}

body {
	font-family:"游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-weight: 500;
}

_:lang(x)::-ms-backdrop, body {
    font-family: "メイリオ", Meiryo, sans-serif;
} 

main{
     width: 100%;
     position: relative;
     min-height: 100%;
 	 z-index: 0;
}

.ttlfont {
/*	font-family: 'Dancing Script', cursive;*/
/*	font-family: 'Italianno', cursive;*/
/*	font-family: 'Allura', cursive;*/
	font-family: 'Tangerine', cursive;
/*	font-family: 'Dynalight', cursive;*/
	font-weight: 400;
}

ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

/*img {
	vertical-align: bottom;
}*/

h1, h2, h3, h4, h5, h6 {
	margin: 0;
	font-weight:normal;
}

p, ul, li {
	margin: 0;
	/* Android・文字サイズ対応 */
	max-height: 9999px;
	/* Android・文字の折り返し対応 */
	background: transparent;
}

a {
	text-decoration: underline;
	/* スマホのハイライトデザインを無効にする */
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a:hover {
	text-decoration: none;
}

:focus {
	outline: none;
}

.mo a img {
	background-color: rgba(255, 255, 255, .01);
}

/* ===============================
	common utility
=============================== */
.horizon {
	display: flex;
	flex-wrap: wrap;
}

ul.normal { /* リスト（通常） */
	padding-left: 1.5em;
	list-style: disc;
}

ul.kome { /* リスト（緑・※） */
	font-size: 1.3rem !important;
	line-height:1.6;
	padding-left: 1.5em;
	margin-top:1em;
}

ul.kome li {
	text-indent: -1.5em;
}

ul.kome li:BEFORE {
	content: "\203b";
	margin-right: 0.5em;
	color:#068f63;
}

ul.num { /* リスト（緑・※n） */
	font-size: 1.3rem !important;
	line-height:1.6;
	padding-left: 1em;
	margin-top:1em;
}

ul.num li {
	text-indent: -1.5em;
}

ul.num li span {
	color: #068f63;
	margin-right: 0.5em;
}

.caption {
	font-size: 1em !important;
	line-height: 1.6em;
}

.vac {
  	display: flex;
	align-items: center;
}

sup { 
	color:#068f63;
}

.green {
	color: #068f63;
}

.white {
	color: #FFFFFF !important;
}

.tc {
	text-align: center !important;
}

.tl {
	text-align: left !important;
}

.tr {
	text-align: right !important;
}

.fs {
	font-size: 0.7em;
}

.fxs {
	font-size: 0.77em;
	line-height: 1.2;
}

.fitImg img {
	width: 100%;
	height: auto;
}

.mt0 {
	margin-top: 0 !important;
}

.mt05em {
	margin-top: 0.5em;
}

.mt1em {
	margin-top: 1em;
}

.mt15em {
	margin-top: 1.5em;
}

.mt2em {
	margin-top: 2em;
}

.mt25em {
	margin-top: 2.5em;
}

.mt3em {
	margin-top: 3em;
}

.mb0 {
	margin-bottom: 0 !important;
}

.mb1em {
	margin-bottom: 1em;
}

.mb2em {
	margin-bottom: 2em;
}

.mb3em {
	margin-bottom: 3em;
}

.mb4em {
	margin-bottom: 4em !important;
}

.mb05em {
	margin-bottom: 0.5em;
}

.mr05em {
	margin-right: 0.5em;
}

.ml0 {
	margin-left: 0 !important;
}

.ml05em {
	margin-left: 0.5em;
}

/* ===============================
	PC / Tab Style
=============================== */
@media print , screen and (min-width: 481px) {
	
	.pc {
		display: block !important;
	}
	.sp {
		display: none !important;
	}
	
	html {
		font-size: 62.5%; /* sets the base font to 10px for easier math */
	}
	
	body {
		font-size: 1.6rem;
		line-height: 1.8;
		
		min-height:100%;
		height:auto !important;
		height:100%;
		position:relative;
	}

	header, main, footer {
		min-width: 1020px;
	}
		
	#container {
		padding-bottom:350px; /*フッターの高さ*/
	}
	
	section {
		width: 1020px;
		margin-left: auto;
		margin-right: auto;
	}

	dl {
		overflow: hidden;
	}

	dl dt {
		float:left;
		clear:left;
	}

	dl dd {
 		float:left;
	}
	
}

/* ===============================
	Mobile Style
=============================== */
@media screen and (max-width: 480px) {
	
	.pc {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
		
	html {
		font-size: calc(100vw / 28);
	}
	
	main {
		margin-top:5em;
	}
		
	main img {
		width: 100%;
		height: auto;
	}
	
	section {
		width: 90%;
		margin: 0 auto;
	}
	
	ul.kome { /* リスト（緑・※） */
		font-size: 0.9rem !important;
		line-height:1.4;
	}
	
	ul.kome li:not(:last-child) {
		margin-bottom:0.4em;
	}	
	
	ul.num { /* リスト（緑・※n） */
		font-size: 0.9rem !important;
		line-height:1.4;
		padding-left: 2em;
	}

	ul.num li:not(:last-child) {
		margin-bottom:0.4em;
	}	

	ul.num li {
		text-indent: -2em;
	}

	
}

/* ===============================
	screen only setting
=============================== */
@media screen {
	
	.hover a, a.hover {
		transition: 0.5s ease 0s;
		-webkit-transition: 0.5s ease 0s;
		-moz-transition: 0.5s ease 0s;
		-ms-transition: 0.5s ease 0s;
	}
	.hover a:hover, a.hover:hover {
		opacity: 0.6;
		-webkit-opacity: 0.6;
		-moz-opacity: 0.6;
		filter: alpha(opacity = 60);
		-ms-filter: "alpha(opacity=60)";
	}
	/* Loading */
	#pageLoad {
		width: 100vw;
		height: 100vh;
		background-color: #fff;
		position: fixed;
		z-index: 999;
	}
	#pageLoad.loading {
		background-image: url(../../images/common/pageloading.gif);
		background-position: center center;
		background-repeat: no-repeat;
	}
	/* pageTop */
	a#pageTop {
		width: 60px;
		height: 60px;
		background-image: url(../../images/common/pagetop.png);
		background-repeat: no-repeat;
		overflow: hidden;
		text-indent: 100%;
		white-space: nowrap;
		text-decoration: none;
		position: fixed !important;
		bottom: 20px;
		right: 10px;
		display: none;
	}
	a#pageTop:hover {
		background-position: 0 bottom;
	}
	.fix {
		position: fixed !important;
	}
}

/* ===============================
	print only setting
=============================== */
@media print {
	.printNewPage {
		page-break-before: always;
	}
}


