@charset "utf-8";
/*!
 * Author and Copyright
 * Author    :  prosysta Inc, (http://prosysta.co.jp/)
 * Created   :  2018.05
 * Modified  :  *******
 */

/* base setting */

*, ::after, ::before {
    box-sizing: border-box;
}
main {
  display: block; /* IEではmainがinline要素と認識される */
  min-height: 60vh;
}
section {
  padding: 0 0 1em;
}
figure,
dd {
  margin: 0;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}
ul, ol {
  padding: 0;
  margin: 0;
}
ul {
  list-style: none;
}
ol {
}
li a {
	display: block;
}
a {
  text-decoration: none;
}
a { color: #0074BF; transition: all .16s;}
a:hover { opacity: .75; }

nav a {
  display: block;
}
.wrapper {
  /*margin-top: 75px;*/
  overflow: hidden;
}

.container {
  max-width: 1280px;
  margin: auto;
  /*padding-left: 3rem;
  padding-right: 3rem;
  box-sizing: content-box;*/
}


@media (max-width:767px) { /* for Tablet less than */

	.breadcrumbs + .contents {
		padding-top: 0;
	}

}  /* END for Tablet less than */


@media (min-width:768px) { /* for Tablet over */
	.breadcrumbs + .contents {
		padding-top: 2em;
	}
	.full-page .breadcrumbs + .contents {
		padding-top: 0;
	}
	
}  /* END for Tablet over */




/*========================
 column 
 ========================*/
/*1カラム*/
.single-column .third-content {
	display: none;
}
.single-column .primary-content {
	max-width: 900px;
	padding: 0;
	width: 100%;
}


/*1カラム(free)*/
.free-page .contents.container {
	max-width: inherit;
}
.free-page .primary-content {
	display: flex;
  justify-content: center;
	max-width: inherit;
}


/*1カラム(full)*/
.full-page .contents ,
.full-page .primary-content {
	max-width: inherit;
	padding-left: 0;
	padding-right: 0;
}


/*2カラム*/
.double-column .third-content {
	display: none;
}
.double-column .primary-content {
	max-width: 940px;
	width: 100%;
}

/*簡易*/
.simple .site-header .logo {
	margin-top: 0;
}

@media (min-width:768px) and (max-width:1112px) { /* for < 1112 */





} /* END for < 1112 */


/* slick */
.slick-prev, .slick-next {
	font-size: 0;
	line-height: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 26px;
	height: 60px;
	padding: 0;
	cursor: pointer;
	color: transparent;
	border: none;
	outline: none;
	background: transparent;
	z-index: 10;
	background: #FFF;
	border-radius: 4px;
}
.slick-prev {
	left: 5px;
}
.slick-next {
	right: 5px;
}
.slick-prev:after, .slick-next:before {
	content: "";
	position: absolute;
	width: 12px;
	height: 12px;
	border-top: 3px solid #b5b5b5;
	border-right: 3px solid #b5b5b5;
	margin-top: -6px;
}
.slick-prev:after {
	left: 8px;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);	
}
.slick-next:before {
	right: 8px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);	
}
.page-nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	text-align: center;
	margin-top: 3em;
}
.page-nav-inner {
	/* 平松編集 */
	/* max-width: 400px; */
	margin: auto;
	border: 1px solid #ccc;
	border-radius: 30px;
}
.page-nav a,
.page-nav span {
	padding: .8em 1.3em;
	display: inline-block;
	color: #363636;
	margin-left: -2px;
	margin-right: -1.9px;
}
.page-nav span ,
.page-nav a:NOT(.nextpostslink) {
	border-right: 1px solid #ccc;
}
.page-nav span:last-child {
	border-right: none;
}
.page-nav .current {
	background-color: #f8f8f8;
	color: #808080;
}

.slick-slide img {
	margin: auto;
	
}





@media (min-width:768px) { /* for Tablet over */
.wrapper {
  margin-top: 0;
}
section + section {
	padding-top: .5em;
}

.single-column #hnav-list {
	display: none;
}

} /* END for Tablet over */


/* CSS custom properties for cascading variables */
/* IEではサポートされていないので使用注意 */
:root {
  --text-color: #363636;
  --key-color: #0074BF;
  --primary-color: #28819A;
  --dark-gray-color: #808080;
  --glay-color: #F0F0F0;
  --light-glay-color: #F8F8F8;
  --white-color: #fff;
  --black-color: #202020;
  --accent-color: #F2CF01;
  --moderate-color: #E8DFDA;
  --base-color: #EDEAE8;
}

/* SAMPLE */
.sample-title {
  color: var(--key-color, #E4731C); /* IEではフォールバック値を設定するも無効となる ※カスタムプロパティ自体がサポートされていない為 ※フォールバックは変数を指定していない時用 */
}


/* HTML tag */
h1, h2, h3, h4, h5, h6, p {
  margin-bottom: 0;
}
h1 {
  margin-top: 0;
}
h1 a {
	display: inline-block;
}
p {
  margin-top: 1em;
}
p + p {
  margin-top: 2em;
}
hr {
  margin: 1rem 0;
  border-top: #3d3d3d solid 1px;
  opacity: .15;
}

@media (min-width:1025px) { /* for Tablet than over */
.container.inner {
  margin: auto;
  padding-left: 120px;
  padding-right: 120px;
}

} /* END for Tablet than over */


/*========================
 tab 
 ========================*/
.tab-area {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.tab-area .tab-label {
	width: 100%;
	font-size: 1.6rem;
	cursor: pointer;
	margin-bottom: 0;
	border: 1px solid #ccc;
	line-height: 1.2;
}
.tab-label:first-child {
	border-radius: 6px 0 0 0;
}
.tab-label:last-child {
	border-radius: 0 6px 0 0;
}
.tab-area.bg-grd .tab-label:NOT(.active) {
	background: url(../img/bg-grd-bl.jpg) repeat-x;
}
.tab-label.active {
	background: #0074bf;
	font-size: 1.6rem;
	border-radius: 6px 6px 0 0;
}
.tab-label a {
	color: #000;
	text-align: center;
	padding: 1.5rem .5rem;
}
.tab-label.active a {
	color: #FFF;
	padding: 1.2rem .5rem;
}
.tab-panel {
	width: 100%;
}
.tab-panel .tab-panel-tit {
	margin-bottom: 1em;
	font-size: 2rem;
}
.tab-panel > .tab-panel-tit:first-child {
	margin-top: 0;
}
.tab-panel-text {
	font-size: 1.4rem;
	line-height: 1.8;
}
.tab-panel-text p {
	margin-top: 0;
}



@media (max-width:767px) { /* for Tablet less than */
	.tab-area .tab-label a {
		font-size: 1.5rem;
		padding: .8rem .5rem;
	}
	.tab-area .tab-label.active a {
		padding: 1.4rem .5rem;
	}
	.tab-area .tab-label.ml2-lh ,
	.tab-area .tab-label.ml2-lh {
		min-height: 2em;
		line-height: 2.4;
	}

} /* END for Tablet less than */


@media (min-width:768px) { /* for Tablet over */
	.sp-tab-area {
		display: none;
	}
	.tab-area li.active {
		font-size: 1.8rem;
	}
	.tab-area li.active a {
		padding: 2rem .5rem;
	}
	.tab-panel {
		min-height: 42rem;
	}
} /* END for Tablet over */


@media (max-width:374px) { /* for <374 */
    .tab-area .tab-label a {
        font-size: 1.2rem;
    }
	.sp-tab-area .tab-area .tab-label a {
		font-size: 1rem;
	}
}

