@charset "utf-8";
/* ===================================================================
     BASE CSS
=================================================================== */
html {
	font-size: 62.5%;
}
body {
	/*-webkit-text-size-adjust: 100%;*/
}
body {
	color: #33312A;
	font-size: 150%;
	font-family: 'Hiragino Kaku Gothic ProN','Hiragino Sans',Meiryo,sans-serif;
	/*font-family: 'ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;*/
	line-height: 1.6;
	position: relative;
	/*padding: 120px 0 0;*/
	background: #fdf1da;
    letter-spacing: 0.2rem;
}
a {
	color: #007DC5;
	text-decoration: none;
	transition: opacity .1s ease-in-out;
}
a:hover {
	/*text-decoration: underline;*/
	/*transition: opacity .1s ease-in-out;*/
}
@media screen and (max-width: 767px) {
body {
	font-size: 140%;
}
}

/* = Selected Text
----------------------------------------------- */
::selection {
	background:#F4B17F; /* Safari */
}
::-moz-selection {
	background:#F4B17F; /* Firefox */
}

.cousei_red {
	color: red;
}

/* -----------------------------------------------------------
	汎用
----------------------------------------------------------- */
.icon_pdf {
	width: 14px;
	vertical-align: text-bottom;
	margin-left: 6px;
}
.icon_blank {
	width: 12px;
	vertical-align: initial;
	margin-left: 4px;
}
.icon_pagelink {
	width: 12px;
}
.fadein {
	opacity: 0;
}
.opfadein {
	opacity: 0;
}
.spacing {
	letter-spacing: -0.03em;
}
.text_keisen {
	letter-spacing: 0!important;
    transform: scale(4, 0.2);
    transform-origin: left;
    display: inline-block;
    margin-right: 4em;
}
.line_through {
	color: red;
	text-decoration: line-through;
}
.line_through span {
	color: #000;
}

/* btn_link */
.btn_link {
    width: 100%;
	margin-left: auto;
	margin-right: auto;
}
.btn_link a {
    display: block;
    position: relative;
    color: #fff;
	letter-spacing: 0.1em;
    text-align: center;
    padding: 6px 0;
	border: 1px solid #fff;
	font-family: Arial, Helvetica, sans-serif;
}
.text_cyu {
	font-size: 80%;
}
.lin_hei_nomal {
	line-height: 1.6;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
.spacing {
	letter-spacing: 0;
}
}
@media screen and (max-width: 767px) {
.spacing {
	letter-spacing: 0;
}
}

/* -----------------------------------------------------------
	header
----------------------------------------------------------- */
header {
	width: 100%;
	height: 108px;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 200;
	/*background: #666;*/
}
.header_inner {
	width: 96%;
	margin:  0 auto;
	position: relative;
}
.logo {
	width: 96px;
	position: absolute;
	top: 10px;
	transition: all 0.8s ease;
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
}

/* スクロール後 */
header, .header_nav {
	transition: all 0.8s ease;
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
}
header.sml {
	height: 80px;
}
.sml .logo {
	top: 10px;
	width: 70px;
}
.sml .header_nav {
	top: 30px;
}

@media screen and (min-width: 768px) and (max-width: 1280px) {
header {
	height: 70px;
}
header.sml {
	height: 70px;
}
.logo {
	width: 74px;
	top: 20px;
}
}
@media screen and (max-width: 767px) {
header {
	height: 54px;
}
.header_inner {
	height: 54px;
}
.header_inner .logo {
	max-width: 50px;
	top: 10px;
	z-index: 9999;
	position: relative;
}

header.sml {
	height: 54px;
}	
header.sml .header_nav {
	top: 0;
}

}

@keyframes header_on {
	100% { top:0; left: 0; opacity:1; }
}
@keyframes header_nav_on {
	100% { top:0; opacity:1; }
}


/* -----------------------------------------------------------
	mian
----------------------------------------------------------- */
main {
	/*padding-top: 108px;*/
}
.main_content {
	padding-top: 60px;
}
.cont_wrap {
	
}
.cont_wrap.bg {
	background: #f0f2f3;
}
.cont_inner {
	max-width: 1200px;
	width: 94%;
	margin: 0 auto;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
.main_content {
	padding-top: 50px;
}
.cont_inner {
	max-width: 94%;
}
}
@media screen and (max-width: 767px) {
main {
	/*padding-top: 54px;*/
}
.main_content {
	padding-top: 30px;
}
.cont_inner {
	max-width: 94%;
}
}

/* -----------------------------------------------------------
	footer
----------------------------------------------------------- */
footer {
	padding: 40px 0;
	background: #50200A;
}
.copy {
	font-family: Arial, sans-serif;
	color: #fff;
	font-size: 12px;
	letter-spacing: 0.1em;
	text-align: center;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {

}
@media screen and (max-width: 767px) {
footer {
	padding: 20px 0;
}
.copy {
	font-size: 10px;
}
}


