@charset "UTF-8";
/*
	BASE
*******************************/

/*
font-family: "Zen Kaku Gothic New", sans-serif;
font-family: "Zen Maru Gothic", sans-serif;
*/
* {
	font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo,'Hiragino Kaku Gothic Pro',Osaka, "ＭＳ Ｐゴシック", "MS PGothic",sans-serif;
	margin: 0;
	padding: 0;
	box-sizing:border-box;
	font-feature-settings: "palt";
	line-height:1;
	text-align: justify;
}

html {
	font-size:62.5%;
	line-height:1;
	body {
		font-size:1.6rem;
		background-color:var(--color_bg);
		img {
			-webkit-backface-visibility: hidden;
			vertical-align:bottom;
			line-height:0;
			max-width: 100%;
			height: auto;
		}
		p,th,td,dt,dd,li,h1,h2,h3,h4,h5,h6,label {
			color:#000000;
		}
		a {
			color:#000000;
			text-decoration:none;
			outline:none;
			border:none;
			img {
				outline:none;
				border:none;
				-webkit-backface-visibility: hidden;
			}
		}
		area {
			border:none;
			outline:none;
		}
		.clear { clear:both;}
	} 
}

:root {
	--color_def: #000000;
	--color_main: #003477;
	--color_sub: #c19964;
	--color_bg: #fff8ec;
}

char.palt {
  display: inline;        /* 念のため */
  letter-spacing: -0.4em; /* 詰めたい量を調整 */
	&.palt-r {
		letter-spacing:-.5em;
	}
	&.palt-l {
		display: inline-block; 
		transform:translateX(-.5em);
	}
}
.lsnormal {
	font:inherit;
	letter-spacing:.03em;
}
.inlineblock {
	font:inherit;
	display: inline-block;
}

/*//////////////////////////////////////////////////////////////////////////*/

/*
	BASE LAYOUT
******************/

.wrap {
	.contents {
		max-width:1200px;
		width: calc(100% - 60px);
		margin:0 auto;
		p {
			font-size: 1.6rem;
			line-height: 2;
		}
	}
}

@media ( hover:hover) {

	a {
		transition: .3s;
		&:hover {
			text-decoration: none;
			opacity: .75;
		}
	}
	
}


@media screen and (max-width:1024px){

	.wrap {
		.contents {
			width: calc(100% - 50px);
		}
	}
	
}

@media screen and (max-width:768px){

	.wrap {
		.contents {
			width: calc(100% - 40px);
			p {
				font-size: 1.4rem;
				line-height: 1.8;
			}
		}
	}
	

}

@media screen and (max-width:768px){

	html {
		body {
			min-width: 375px;
		}
	}

}


@media screen and (max-width:768px) {
    .pcOnly {
    	display:none !important;
    }
    .tbOnly {
    	display:none !important;
    }
}
@media screen and (min-width:1024px) {
    .tbOnly {
    	display:none !important;
    }
    .sptbOnly {
    	display:none !important;
    }
}
@media screen and (min-width:769px) {
    .spOnly {
    	display:none !important;
    }
}