@charset "utf-8";
/* -----------------------------------------------------------------
 common
----------------------------------------------------------------- */

.margin_standard {
	width:94%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
}

/*---------- clearfix ----------*/
.clearfix::after {
  content: '';
  display: block;
  clear: both;
}


/*---------- effect_fadein ----------*/
.effect_fade {
	opacity : 0;
	transform : translate(0, 20px);
	transition : all 1.5s ease;
}

.effect_fade.effect_scroll {
	opacity : 1;
	transform : translate(0, 0);
}

/*---------- overlay ----------*/
#overlay {
	display:none;
    position: fixed;
	top:0;
    width: 100vw;
    height: 100vh;
}
/*---------- body.fixed ----------*/
body.fixed {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
}

/*---------- link ----------*/
a {
  color: #4b4948;
  text-decoration:none;
}

/*---------- font ----------*/
.font_bold {
	font-weight:bold;
}
.text_center {
	text-align:center;
}

/*---------- color ----------*/
.collar_red {
	color:red;
}
/*---------- inline_block ----------*/
.inline_block {
	display:inline-block;
}

/*---------- margin ----------*/
.mt_00 {
	margin-top:0 !important;
}
.mt_06em {
	margin-top:.6em !important;
}
.mt_1em {
	margin-top:1em !important;
}
.mt_2em {
	margin-top:2em !important;
}
.mt_3em {
	margin-top:3em !important;
}
.mt_4em {
	margin-top:4em !important;
}
.mt_5em {
	margin-top:5em !important;
}


/* -----------------------------------------------------------------
 page_heading
----------------------------------------------------------------- */
.page_heading {
	background:url(/common/img/heading_bg_sp.jpg) no-repeat center center;
	background-size:cover;
}

@media screen and (min-width: 768px) {
.page_heading {
	background:url(/common/img/heading_bg_pc.jpg) no-repeat center center;
	background-size:cover;
}
}

/*---------- h1 ----------*/
.page_heading h1 {
	padding:6vw 0;
	padding-bottom: calc(6vw + 1.2rem);
	line-height:1.2;
	text-align:center;
	font-size:1.96em;
	color:#fff;
}
.page_heading h1 .ico {
	display:inline-block;
	width:1em;
	height:1em;
	margin-right:0.3em;
}
.page_heading h1 .ico img {
	display:inline;
	width:100%;
}

@media screen and (min-width: 768px) {
.page_heading h1 {
	display: flex;
	justify-content: center;
	align-items: center;
	padding:.9em 0 1.31em;
	padding:1em 0 1.5em;
	font-size:2.1em;
}
}

/* -----------------------------------------------------------------
 breadcrumb(common)
----------------------------------------------------------------- */
.breadcrumb {
	padding: .8em 3% 0;
}
.breadcrumb li {
	display:inline;
	line-height: 1;
	font-size: 0.928em;
}
.breadcrumb li >* {
	display:inline;
}
.breadcrumb li a {
	display:inline-block;
	color:#76b5d5;
}
.breadcrumb li a::after {
	content:"";
	display:block;
	width:100%;
	height:1px;
	background:#76b5d5;
	transition:all .3s ease;
}
.breadcrumb li:nth-child(n+2) {
	padding-left: 2em;
	background: url("/common/img/arrow_standard_black.svg") left 0.6em center no-repeat;
	background-size: .8em .8em;
}
@media screen and (min-width: 768px) {
.breadcrumb li {
	font-size: 0.833em;
}
.breadcrumb li a:hover::after {
	background:transparent !important;
}
}

/*---------- .page_heading .breadcrumb ----------*/
.page_heading .breadcrumb li {
	color: #fff;
}
.page_heading .breadcrumb li a {
	color: #fff;
}
.page_heading .breadcrumb li a::after {
	background:#fff;
}
.page_heading .breadcrumb li:nth-child(n+2) {
	background: url("/common/img/arrow_standard_white.svg") left 0.5em center no-repeat;
	background-size: .8em .8em;
}


/* -----------------------------------------------------------------
 body
----------------------------------------------------------------- */
body {
  overflow-wrap: break-word;
  overflow-y: scroll;
  background-color: #fff;
  -webkit-text-size-adjust: none;
  word-wrap: break-word;
  line-height: 1.5;
  font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  font-size: 14px;
  color: #4b4948;
}
@media screen and (min-width: 375px) {
body {
	font-size:calc(0.875rem + 4 * (100vw - 375px) / 649); /* w375のとき14px → w1024のとき18px */ 
}
}
@media screen and (min-width: 1024px) {
body {
	font-size:18px;
}
}


/* -----------------------------------------------------------------
 main_cont
----------------------------------------------------------------- */
.main_cont {
	margin-top:60px;
  overflow:hidden;
}
.page_home .main_cont {
	margin-top:0;
}

@media screen and (min-width: 768px) {
.main_cont {
	margin-top:0;
	margin-left:240px;
}
}
@media screen and (min-width: 1024px) {
.main_cont {
	margin-left:280px;
}

}

/* -----------------------------------------------------------------
 for_sp / for_pc
----------------------------------------------------------------- */
.for_sp {
	display:block;
}
.for_sp_inline {
	display:inline;
}
.for_pc {
	display:none;
}
.for_pc_inline {
	display:none;
}
.for_sp_text_center {
	text-align:center;
}

@media screen and (min-width: 768px) {
.for_sp {
	display:none;
}
.for_sp_inline {
	display:none;
}
.for_pc {
	display:block;
}
.for_pc_inline {
	display:inline;
}
.for_pc_text_center {
	text-align:center;
}


}


