@charset "UTF-8";

/* TOP PAGE
---------------------------------------------------- */


#content #billboardbox {
	margin-top: -10px;
	margin-left: -10px;
	margin-right: -10px;
}
#slider-wrapper {
	height: auto;
}
@media (max-width: 768px) {
	#content #billboardbox {
		float: none;
	}
	#slider-wrapper {
		height: auto;
	}
}


#content a {
	text-decoration: none;
}

a:hover, a:focus {
	text-decoration: none;
}


a.card h4 {
	font-size: 15.5px;
	font-weight: 500;
}


#container .wrap2 {
	width: 100vw;
	background-image: url(/ipu/images/top/back_images.jpg);
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	padding: 15px 0 25px;
}


#container.container {
	padding-top: 42px;
}

@media (max-width: 768px) {
	#container .fullview {
		position: relative;
		margin-top: -42px;
	}
}

#breadcrumb {
	display: none;
}


div.inline_block {
	display: inline-block;
}


.label {
	display: inline-block;
	white-space: normal;
	padding: 0.5em 0.6em 0.5em;
	line-height: 1.2;
	font-size: 90%;
}





/* row関連 */
.row {
	margin-right: -8px;
	margin-left: -8px;
}
.row:before, .row:after {
	display: table;
	content: " ";
}
.row:after {
	clear: both;
}
.col-1, .col-sm-1, .col-md-1, .col-lg-1, .col-2, .col-sm-2, .col-md-2, .col-lg-2, .col-3, .col-sm-3, .col-md-3, .col-lg-3, .col-4, .col-sm-4, .col-md-4, .col-lg-4, .col-5, .col-sm-5, .col-md-5, .col-lg-5, .col-6, .col-sm-6, .col-md-6, .col-lg-6, .col-7, .col-sm-7, .col-md-7, .col-lg-7, .col-8, .col-sm-8, .col-md-8, .col-lg-8, .col-9, .col-sm-9, .col-md-9, .col-lg-9, .col-10, .col-sm-10, .col-md-10, .col-lg-10, .col-11, .col-sm-11, .col-md-11, .col-lg-11, .col-12, .col-sm-12, .col-md-12, .col-lg-12 {
	position: relative;
	min-height: 1px;
	padding-right: 4px;
	padding-left: 4px;
}


/* card関連 */

.card {
	display: block;
	padding: 0px 0 5px;
	margin-bottom: 17px;
	line-height: 1.5;
	background-color: #f9f9f9;
	border: 1px solid #ddd;
	border-radius: 6px;
	-webkit-transition: border .2s ease-in-out;
	   -o-transition: border .2s ease-in-out;
		  transition: border .2s ease-in-out;
}

.card > img,
.card a > img {
	display: block;
	max-width: 100%;
	height: auto;
	margin-right: auto;
	margin-left: auto;
	-webkit-transition: border .2s ease-in-out;
	   -o-transition: border .2s ease-in-out;
		  transition: border .2s ease-in-out;
	-webkit-border-radius: 6px 6px 0px 0px / 6px 6px 0px 0px;
	-moz-border-radius: 6px 6px 0px 0px / 6px 6px 0px 0px;
	border-radius: 6px 6px 0px 0px / 6px 6px 0px 0px;
}
.card .caption {
	padding: 4px 8px;
	text-align: left;
	color: #333;
}

.card .caption h4 {
	line-height: 1.4;
	margin-top: 5px;
	margin-bottom: 5px;
}



#content .card .caption p {
	line-height: 1.4;
}
#content .card .caption p.rev_ind {
	padding: 0 0 0 0.5em;
	text-indent: -0.5em;
}

#content a.card .label {
	display: inline-block;
	padding: 5px;
	white-space: normal;
	line-height: 1.2;
}
#content .card .caption ul, #content .card .caption ol {
	margin-bottom: 0px;
}

a.card h4 {
	font-size: 15.5px;
	font-weight: 500;
}


a.card ul {
   padding-inline-start: 1em;
}

#content a.card li {
	line-height: 1.5;
	font-size: 13px;
}
#content a.card .label {
	display: inline-block;
	padding: 5px;
	white-space: normal;
	line-height: 1.2;
}
@media (max-width: 768px) {
	a.card h4 {
		font-size: 13.5px;
	}

	a.card li {
		line-height: 1.5;
		font-size: 12px;
	}
	.card .caption {
		padding: 4px 6px;
		text-align: left;
		color: #333;
	}
}


/* what's new関連 */
#whatsnew {
	overflow: hidden;
	position: relative;
	margin-top: 10px;
	margin-bottom: 10px;
}
#whatsnew a.btn {
	margin-top:-20px;
}
#content .tiles-toggle {
	margin-bottom:10px;
	position: relative;
	margin-left:-10px;
	margin-right:-10px;
}
#content .tiles-toggle > a {
	/*border: 1px solid #aaa;*/
	display: block;
	padding: 10px 10px;
	text-decoration: none;
}
#content .tiles-toggle > a:after {
	font-family: FontAwesome;
	content: "\f068";
	margin-top: 0px;
	position: absolute;
	right: 10px;
	top: 0.9em;
	width: 22px;
}
#content .tiles-toggle > a.collapsed:after {
	font-family: FontAwesome;
	content: "\f067";
	margin-top: 0px;
	position: absolute;
	right: 10px;
	top: 0.9em;
	width: 22px;
}

/* accordion menu*/
#toggle-freshman,#toggle-event,#toggle-exam {
	color:#fff;
	font-size:1.3em;
}
.tiles-toggle i {
	font-size:1.5em;
}
#toggle-freshman {
	background-color:#da598d;
}
#toggle-event {
	background-color:#56b550;
}
#toggle-exam {
	background-color:#56b2cf;
}

@media (max-width: 768px) {
#toggle-freshman,#toggle-event,#toggle-exam {
	font-size:1.1em;
}
.tiles-toggle i {
	padding-right:5px;
}
}

/* billboard
---------------------------------------------------- */
.move_txt{
	position: absolute;
	top:0px;
	z-index:2;
}

.bbd_move {
	position:relative;
}

.mbtm1rem {
	margin-bottom: 1rem;
}
.mbtm3rem {
	margin-bottom: 3rem;
}
.mbtm5rem {
	margin-bottom: 5rem;
}



/* -------------------------------------------------- *
 * topボタン関係
 * -------------------------------------------------- */
.topmenu {
	padding: 0;
	margin-bottom: 12px;
}
.topmenu .btn {
	font-size: 2em;
	box-shadow: none;
	line-height: 1.0;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center;
	-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
	justify-content: center; /* 横方向中央揃え */
}
.topmenu .label {
	padding: 0.05em 1em;
	line-height: 1.5;
	margin-left: 5px;
	margin-right: 5px;
	vertical-align: middle;
}
p.topmenu span.label.label-outline {
	line-height: 1.5;
}
@media (max-width: 768px) {
.topmenu .btn {
	font-size: 1.3em;
	padding: 6px 5px;
	box-shadow: none;
}
}
/******************ボーダーボタン blue*******************/
.topmenu .btn.btn-blue.btn-square {
	background: repeating-linear-gradient(to top, #5DA8DA, #2690D7, #379CE0 4px, #5BA6D9 3px);
	color:#FFF;
	border: solid 1px #fff;
	outline: solid 3px #3498db;
}
.topmenu .btn.btn-blue.btn-square:hover,.topmenu .btn.btn-blue.btn-square:active,.topmenu .btn.btn-blue.btn-square:active:focus {
	background: repeating-linear-gradient(to top, #2D92D7, #1B70AB, #2D92D7 4px, #338CCA 3px);
	color:#FFF;
	border: solid 1px #fff;
	outline: solid 3px #2D92D7;
	outline-offset: 0px;
}
/******************ボーダーボタン pink*******************/
.topmenu .btn.btn-pink.btn-square {
	background: repeating-linear-gradient(to top, #f95c5f, #f96366, #f9777a 4px, #f95c5f 3px);
	color: #FFF;
	border: solid 1px #fff;
	outline: solid 3px #f97a7c;
}
.topmenu .btn.btn-pink.btn-square:hover,.topmenu .btn.btn-pink.btn-square:active,.topmenu .btn.btn-pink.btn-square:active:focus {
	background: repeating-linear-gradient(to top, #f94d50, #f94d50, #FA676B 4px, #f94d50 3px);
	color:#FFF;
	border: solid 1px #fff;
	outline: solid 3px #f94d50;
	outline-offset: 0px;
}
/******************ボーダーボタン内のラベル*******************/
.topmenu .label-default.label-outline {
	background-color:#fff;
	border: solid 0px #666666;
}
/* apua */
.topmenu .btn-aqua .label-default.label-outline {
	color: #27A7CB;
}
/* pink */
.topmenu .btn-pink .label-default.label-outline {
	color: #f94d50;
}


/******************box pink*******************/
#content p.box-pink {
	color: #f95c5f;
	border: solid 1px #f95c5f;
	font-size: 1.8em;
	line-height: 1.3;
	margin: 0.5em 0;
	display: flex;
	-webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
	text-align: center;
	padding: 9px 10px;
}
@media (max-width: 768px) {
#content p.box-pink {
	font-size: 1.5em;
}
#content p.box-pink span.sm_left{
	display: block;
	text-align: left;
	margin: 5px 0 0;
	line-height: 1.3;
}
}

/** 00. サムネイル
 **************************************************************** **/
.bg-dark {
	color: #fff;
}
.bg-dark-30:before,.bg-dark-60:before,.bg-dark-90:before
 {
	content:" ";left:0
}
.bg-dark-30:before,.bg-dark-60:before,.bg-dark-90:before {
	position:absolute;height:100%;width:100%;z-index:0;
}
.bg-dark-30:before {
	background-color:rgba(34,34,34,.3);top:0
}


/* ----------------------------------------
 * YouTube画像に再生ボタン配置
 * --------------------------------------- */
.videoBox {
	position: relative;
}
.play {
	width: 50px;
	height: 50px;
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	margin:0;
	padding:0;
	opacity: 0.9;
}


/* 画像コンテンツ
---------------------------------------------------- */
/* スペース有りタイプ */
.content-wrap {
	text-align: center;
	margin-bottom: 5px;
	padding: 0px;
	position: relative;
	overflow: hidden;
	background: #fff;
	-webkit-border-radius: 6px 6px 0px 0px / 6px 6px 0px 0px;
	-moz-border-radius: 6px 6px 0px 0px / 6px 6px 0px 0px;
	border-radius: 6px 6px 0px 0px / 6px 6px 0px 0px;
}
.content-wrap h4 {
	font-size: 15px;
	text-transform: uppercase;
}
.content-wrap h4:hover {
	font-size: 15px;
	text-transform: uppercase;
	text-decoration: none;
}
.content-wrap:hover .content-hover {
	opacity: 1;
	text-decoration: none;
}

/* スペースなしタイプ */
.content-wrap2 {
	text-align: center;
	margin-bottom: 0px;
	padding: 0px;
	position: relative;
	overflow: hidden;
	background: #fff;
}
.content-wrap2 h4 {
	font-size: 15px;
	text-transform: uppercase;
}
.content-wrap2 h4:hover {
	font-size: 15px;
	text-transform: uppercase;
	text-decoration: none;
}
.content-wrap2:hover .content-hover {
	opacity: 1;
	text-decoration: none;
}
.content-label {
	position: absolute;
	top:0;
	left: 0;
	padding: 4px 10px;
	text-transform: uppercase;
	font-size: 13px;
	color:#fff;
	background: #333;
}
.content-hover {
	position: absolute;
	top: 0;
	left: 0;
	width:100%;
	height: 100%;
	transition: all 0.3s;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	background-color:rgba(66,172,194,0.90);
	text-align: center;
	opacity: 0;
	-webkit-border-radius: 6px 6px 0px 0px / 6px 6px 0px 0px;
	-moz-border-radius: 6px 6px 0px 0px / 6px 6px 0px 0px;
	border-radius: 6px 6px 0px 0px / 6px 6px 0px 0px;
}
a.card .content-hover p {
	position: absolute;
	width:100%;
	top:50%;
	margin-top: -20px;
	text-align: center;
	font-size: 20px;
	color:#fff;
	text-transform: none;
}

/** 00. back to home
 **************************************************************** **/
#content a.btn_home {
	display: inline-block; 
	min-width: 120px;
	padding: 8px 24px;
	margin: 10px 0;
	text-align: center;
	text-decoration: none;
	background: transparent;
	border-color: rgba(66,172,194,0.90);
	border-style: solid;
	border-width: 1px;
	color: rgba(66,172,194,0.90);
	-webkit-border-radius: 5px;
	border-radius: 5px;
	font-size: 14px;
}
#content a.btn_home:hover {
	background-color: rgba(66,172,194,0.90); 
	color: #fff; 
	cursor: pointer;
}

/* ----------------------------------------
 * 囲み文字の基本形　インデント有
 * --------------------------------------- */
.maru {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	flex-flow: column; 
	vertical-align: middle;
	margin-right: 0.5em;
	margin-bottom: 0.5em;
}
/* 円の大きさ */
.size_normal{
	width: 22px;
	height: 22px;
}
/* 長円の大きさ */
.size_wide{
	width: 42px;
	height: 22px;
	border-radius: 10px;
}
/* 文字の大きさ */
.letter3 {
  font-size: 1em;
	text-indent: 0em;
}

/* 文字の大きさ */
.blue1 {
	color: #fff;
	border: 1px solid #217dbb;
	background: #217dbb;
}



/* 緊急告知・終了の表示など
---------------------------------------------------- */
div.error {
	color: #333;
	border-radius: 4px;
	background-color: #FFFFFF;
	border: 2px solid #FFD404;
	padding: 0.5em 1em;
	margin: 1em 0;
}

.error .error-title {
	font-size: 1.2em;
	background: #FFD404;
	padding: 4px;
	margin: -0.5em -0.9em 0.5em;
	text-align: center;
	color: #333;
	font-weight: bold;
	border-radius: 4px 4px 0px 0px; /* 左上、右上、右下、左下 */
	letter-spacing: 0.02em;
}

@media (max-width: 768px) {
	div.error {
		color: #333;
		border-radius: 4px;
		background-color: #FFFFFF;
		border: 2px solid #FFD404;
		padding: 0.5em 0.4em;
		margin: 1em 0;
	}
	
	.error .error-title {
		font-size: 1.1em;
		background: #FFD404;
		padding: 4px;
		margin: -0.5em -0.4em 0.5em;
		text-align: center;
		color: #333;
		font-weight: bold;
		border-radius: 4px 4px 0px 0px; /* 左上、右上、右下、左下 */
		letter-spacing: 0.02em;
	}
}


/* pinkback 
---------------------------------------------------- */
div.error.pinkback {
	font-family: "Open Sans", "Helvetica Neue", Helvetica, "Arial", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	color: #333;
	border-radius: 4px;
	background-color: #fff;
	border: 2px solid #f14b7d;
	padding: 0.5em 1em;
	margin: 1em 0;
}



.error.pinkback .error-title {
	font-size: 1.2em;
	background: #f14b7d;
	padding: 4px;
	margin: -0.5em -0.9em 0.5em;
	text-align: center;
	color: #fff;
	font-weight: bold;
	border-radius: 4px 4px 0px 0px; /* 左上、右上、右下、左下 */
	letter-spacing: 0.02em;
}


@media (max-width: 768px) {
	div.error.pinkback {
		color: #333;
		border-radius: 4px;
		background-color: #FFFFFF;
		border: 2px solid #f14b7d;
		padding: 0.5em 0.4em;
		margin: 1em 0;
	}
	
	.error.pinkback .error-title {
		font-size: 1.1em;
		background: #f14b7d;
		padding: 4px;
		margin: -0.5em -0.4em 0.5em;
		text-align: center;
		color: #fff;
		font-weight: bold;
		border-radius: 4px 4px 0px 0px; /* 左上、右上、右下、左下 */
		letter-spacing: 0.02em;
	}
}



/* blueback
---------------------------------------------------- */
div.error.blueback {
	font-family: "Open Sans", "Helvetica Neue", Helvetica, "Arial", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	color: #333;
	border-radius: 4px;
	background-color: #fff;
	border: 2px solid #42B0EC;
	padding: 0.5em 1em;
	margin: 1em 0;
}

.error.blueback .error-title {
	font-size: 1.2em;
	background: #42B0EC;
	padding: 4px;
	margin: -0.5em -0.9em 0.5em;
	text-align: center;
	color: #fff;
	font-weight: bold;
	border-radius: 4px 4px 0px 0px; /* 左上、右上、右下、左下 */
	letter-spacing: 0.02em;
}


@media (max-width: 768px) {
	div.error.blueback {
		color: #333;
		border-radius: 4px;
		background-color: #FFFFFF;
		border: 2px solid #42B0EC;
		padding: 0.5em 0.4em;
		margin: 1em 0;
	}
	
	.error.blueback .error-title {
		font-size: 1.1em;
		background: #42B0EC;
		padding: 4px;
		margin: -0.5em -0.4em 0.5em;
		text-align: center;
		color: #fff;
		font-weight: bold;
		border-radius: 4px 4px 0px 0px; /* 左上、右上、右下、左下 */
		letter-spacing: 0.02em;
	}
}



div.error.pinkback .btn-danger {
  color: #fff;
  background-color: #F36993;
  border-color: #F36993;
  -webkit-transition-timing-function: ease;
       -o-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-duration: .3s;
       -o-transition-duration: .3s;
          transition-duration: .3s;
  -webkit-transition-property: all;
       -o-transition-property: all;
          transition-property: all;
}

div.error.pinkback .btn-danger:focus, div.error.pinkback .btn-danger.focus {
  color: #fff;
  background-color: #D53666;
  border-color: #D53666;
}

div.error.pinkback .btn-danger:hover {
  color: #fff;
  background-color: #D53666;
  border-color: #D53666;
}

div.error.pinkback .btn-danger:active, div.error.pinkback .btn-danger.active, div.error.pinkback .open > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #D53666;
  border-color: #D53666;
}

div.error.pinkback .btn-danger:active:hover, div.error.pinkback .btn-danger:active:focus, div.error.pinkback .btn-danger:active.focus, div.error.pinkback .btn-danger.active:hover, div.error.pinkback .btn-danger.active:focus, div.error.pinkback .btn-danger.active.focus, .open > div.error.pinkback .btn-danger.dropdown-toggle:hover, div.error.pinkback .open > .btn-danger.dropdown-toggle:focus, div.error.pinkback .open > .btn-danger.dropdown-toggle.focus {
  color: #fff;
  background-color: #D53666;
  border-color: #D53666;
}

div.error.pinkback .btn-danger:active, div.error.pinkback .btn-danger.active, div.error.pinkback .open > .btn-danger.dropdown-toggle {
  background-image: none;
}

div.error.pinkback .btn-danger.disabled, div.error.pinkback .btn-danger.disabled:hover, div.error.pinkback .btn-danger.disabled:focus, div.error.pinkback .btn-danger.disabled.focus, div.error.pinkback .btn-danger.disabled:active, div.error.pinkback .btn-danger.disabled.active, div.error.pinkback .btn-danger[disabled], div.error.pinkback .btn-danger[disabled]:hover, div.error.pinkback .btn-danger[disabled]:focus, div.error.pinkback .btn-danger[disabled].focus, div.error.pinkback .btn-danger[disabled]:active, div.error.pinkback .btn-danger[disabled].active, div.error.pinkback fieldset[disabled] .btn-danger, div.error.pinkback fieldset[disabled] .btn-danger:hover, div.error.pinkback fieldset[disabled] .btn-danger:focus, fieldset[disabled] .btn-danger.focus, div.error.pinkback fieldset[disabled] .btn-danger:active, div.error.pinkback fieldset[disabled] .btn-danger.active {
  background-color: #D53666;
  border-color: #D53666;
}



















/* 追加　スライダーの文字
---------------------------------------------------- */
.slider-container {
	padding: 30px 0 50px;
	background: #eeeeee;
}

.s-three-wrap {
	position: relative;
	max-width: 900px;
	margin: 0 auto;
	padding: 5px;
}

.s-three-text,
.s-three-sub,
.s-three-button {
	position: absolute;
	font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Segoe UI', YuGothic, 'Yu Gothic Medium', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	width: 150%;
	left: 0;
	text-align: center;
	color: rgba(83,83,83,1.00);
}

.s-three-text {
	color: #EB6D9A;
	top: 20%;
	font-size: 1.2em;
	font-weight:500;
}

.s-three-sub {
	top: 45%;
	font-size: 1.5em;
}


.s-three-button {
	top: 70%;
	left: calc( 75% - 75px );
	display: block;
	width: 10em;
	font-size: 1em;
	padding: 10px 10px;
	box-sizing: border-box;
	background: #FFB10B;
	color: #231815;
	text-align: center;
	text-decoration: none;
	transition: all .25s ease;
}

.s-three-button:hover {
	background: #FFEC3D;
	color: #1b1b1b;
}

.s-three-button:focus {
	background: #FFB10B;
	color: #1b1b1b;
}

.s-three-button:focus {
	outline: 0;
}
@media (max-width: 768px) {
.s-three-text {
	color: #EB6D9A;
	top: 20%;
	font-size: 0.9em;
	font-weight:500;
}

.s-three-sub {
	top: 45%;
	font-size: 0.8em;
}

.s-three-button {
	top: 70%;
	left: calc( 80% - 75px );
	display: block;
	width: 10em;
	font-size: 0.8em;
	padding: 5px 5px;
	box-sizing: border-box;
	background: #FFB10B;
	color: #231815;
	text-align: center;
	text-decoration: none;
	transition: all .25s ease;
}

.s-three-button:active {
	background: #FFEC3D;
	color: #1b1b1b;
}

}


.s-three-text {
	animation: slideFromRight 1.5s ease 0s 1 normal;
}

.s-three-sub {
	animation: slideFromRightSub 2.0s ease 0s 1 normal;
}

.s-three-button {
	animation: slideFromRightBtn 2.5s ease 0s 1 normal;
}

@keyframes slideFromRight {
  0%, 25% {
    transform: translateX(50px);
    opacity: 0;
  }
  100% {
    transform: translateX(0px);
    opacity: 1;
  }
}

@keyframes slideFromRightSub {
  0%, 45% {
    transform: translateX(50px);
    opacity: 0;
  }
  100% {
    transform: translateX(0px);
    opacity: 1;
  }
}

@keyframes slideFromRightBtn {
  0%, 65% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0px);
    opacity: 1;
  }
}









/* -------------------------------------------------- *
 * header
 * -------------------------------------------------- */
#global_header.rltv #header {
	background: #fff;
}

#global_header {
	background-color: transparent;
}

#header h1 {				/* ヘッダー画像貼り替え */
	background-image: url(/ipu/images/common/logo_newlife-light@2x.svg?);
}

#global_header.header-shadow #header h1,#global_header.rltv #header h1 {        /* ヘッダー画像貼り替え */
	background-image: url(/ipu/images/common/logo_newlife@2x.svg);
}

#global_header .menu-button, #global_header .menu-cart {
	color:#FFFFFF;
}

#global_header #header .head_bar {
	color: #FFFFFF;
}

#global_header #header ul.m-header a {
	color: #FFFFFF;
}

#global_header.header-shadow #header ul.m-header a,#global_header.rltv #header ul.m-header a {
	color: #306B50;
}

#global_header.header-shadow #header .head_bar,#global_header.rltv #header .head_bar {
	color: #333;
}

@media (max-width: 768px) {
	#header {
		overflow: hidden;
	}
	
}




/* -------------------------------------------------- *
 * flexslider
 * -------------------------------------------------- */
.flexslider {
	border: 0;
	margin: 0;
	z-index: 9;
}

.flexslider .slides {
	height: 100%!important;
	-webkit-transition-delay: 1s;
	transition-delay: 1s;
	overflow: hidden;
}

.flexslider .slides li {
	height: 100%!important;
	width: 100%;
	padding: 0;
	margin: 0 0 0 0;
}

.flexslider .slides_btn {
	position: absolute;
	z-index: 10;
	width: 80%;
	height: 100%;
	margin: auto;
	left: 0;
	right: 0;
	bottom: -60%;
}
.flexslider .slides_btn_02 {
	position: absolute;
	z-index: 10;
	width: 60%;
	height: 100%;
	margin: auto;
	left: 0;
	right: 0;
	bottom: -25%;
	opacity: 0.8;
}


.flex-direction-nav a {
	text-shadow: none;
	line-height: 60px;
	color: #fff;
	width: 30px;
	height: 60px;
	margin: -30px 0 0;
	opacity: .8;
}

.flex-direction-nav a:hover {
	opacity: 1;
}

.flex-direction-nav a::before {
	font-family: linea-arrows-10!important;
	font-style: normal!important;
	font-weight: 400!important;
	font-variant: normal!important;
	text-transform: none!important;
	speak: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-shadow: none;
	color: #fff;
}

.demo-preview h4,.feature-link,
.inner-nav .sub-menu li a,
.module-page-title .h5,
.module-title h2,.special-heading,
.testimonials-card-author h4 {
	text-transform: uppercase;
}

.flex-direction-nav a.flex-next::before {
	content: "\e04b";
}

.flex-direction-nav a.flex-prev::before {
	content: "\e03f";
}

.flex-direction-nav .flex-prev {
	left: 45px;
}

.flex-direction-nav .flex-next {
	right: 45px;
}

.dark-nav .flex-direction-nav a::before {
	color: #313131;
}

.slide-background {
	background-position: center;
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	background-size: cover;
	z-index: -1;
}

.flexslider .container,
.full-height .container,
.module-slides .container {
	display: table;
	height: 100%;
	padding: 0;
}

.flexslider .container>.row,
.full-height .container>.row,
.module-slides .container>.row {
	position: relative;
	display: table-cell;
	vertical-align: middle;
	height: 100%;
}

.flexslider .container,.full-height .container,
.module-header .container,
.module-slides .container {
	position: relative;
	z-index: 2;
}

.flexslider .container>.row>[class*=col-]>:last-child,
.module-header .container>.row>[class*=col-]>:last-child,
.module-slides .container>.row>[class*=col-]>:last-child {
	margin-bottom: 0;
}

.flexslider .btn,
.module-header .btn,
.module-slides .btn {
	margin: 3px;
}

.flexslider h1,
.flexslider h2,
.flexslider h3,
.flexslider h4,
.flexslider h5,
.flexslider h6,
.module-header h1,
.module-header h2,
.module-header h3,
.module-header h4,
.module-header h5,
.module-header h6,
.module-slides h1,
.module-slides h2,
.module-slides h3,
.module-slides h4,
.module-slides h5,
.module-slides h6 {
	color: #313131;
	margin: 0;
}

.flexslider p,
.module-header p,
.module-slides p {
	font-size: 15px;
	margin: 0;
}

.flexslider h1.h1,
.module-header h1.h1,
.module-slides h1.h1 {
	font-size: 70px;
}

.flexslider h1.h2,
.module-header h1.h2,
.module-slides h1.h2 {
	font-size: 54px;
}

.flexslider h1.h3,
.module-header h1.h3,
.module-slides h1.h3 {
	font-size: 48px;
}

.flexslider h1.h4,
.module-header h1.h4,
.module-slides h1.h4 {
	font-size: 32px;
}

.flexslider h1.h5,
.module-header h1.h5,
.module-slides h1.h5 {
	font-size: 18px;
}

.flexslider h1.h6,
.module-header h1.h6,
.module-slides h1.h6 {
	letter-spacing: 1px;
	margin-right: -1px;
	font-size: 14px;
}

@media (max-width:568px) {
	.flexslider h1.h1,
	.module-header h1.h1,
	.module-slides h1.h1 {
		font-size: 39px;
		font-weight: 900;
	}
	
	.flexslider h1.h2,
	.module-header h1.h2,
	.module-slides h1.h2 {
		font-size: 27px;
	}
	
	.flexslider h1.h3,
	.module-header h1.h3,
	.module-slides h1.h3 {
		font-size: 24px;
	}
	
	.flexslider h1.h4,
	.module-header h1.h4,
	.module-slides h1.h4 {
		font-size: 16px;
	}
	
	.flexslider h1.h5,
	.module-header h1.h5,
	.module-slides h1.h5 {
		font-size: 12.6px;
	}
	
	.flexslider h1.h6,
	.module-header h1.h6,
	.module-slides h1.h6 {
		font-size: 9.8px;
	}
	
	.flexslider p,
	.module-header p,
	.module-slides p {
		font-size: 16px;
	}
}

@media (max-width:992px) {
	.slides-navigation a.prev {
		left: 20px;
	}
	
	.slides-navigation a.next {
		right: 20px;
	}
}

@media all and (max-width:767px) {
	.flex-direction-nav {
		display: none;
	}
	
	.kenburns .slides li .slide-background {
		-webkit-animation: none!important;
		animation: none!important;
	}
	
	.flexslider .slides_btn {
	position: absolute;
	z-index: 10;
	width: 80%;
	height: 100%;
	margin: auto;
	left: 0;
	right: 0;
	bottom: -50%;
}

	.flexslider .slides_btn_02 {
	position: absolute;
	z-index: 10;
	width: 80%;
	height: 100%;
	margin: auto;
	left: 0;
	right: 0;
	bottom: -20%;
}
}

@media all and (max-width:400px) {


	.flexslider .slides_btn_02 {
	position: absolute;
	z-index: 10;
	width: 80%;
	height: 100%;
	margin: auto;
	left: 0;
	right: 0;
	bottom: -10%;
}

}



/* 1200px以上で見たときは"p_lg"のclassがついた画像が表示される */
.slide-background.p_lg { display: block !important; }
.slide-background.p_sm { display: none !important; }
.slide-background.p_xs { display: none !important; }
/* 480px以上で見たときは"p_sm"のclassがついた画像が表示される */
@media only screen and (max-width: 1199px) {
.slide-background.p_lg { display: none !important; }
.slide-background.p_sm { display: block !important; }
.slide-background.p_xs { display: none !important; }
}
/* 480px以下で見たときは"p_xs"のclassがついた画像が表示される */
@media only screen and (max-width: 480px) {
.slide-background.p_lg { display: none !important; }
.slide-background.p_sm { display: none !important; }
.slide-background.p_xs { display: block !important; }
}

.flexslider,
.full-height,
.module-slides {
	min-height: 40vh;
	height: 40vh;
	padding: 0;
}

@media all and (max-width:768px) {
	.flexslider,
	.full-height,
	.module-slides {
		min-height: 50vh;
		height: 50vh;
		padding: 0;
	}
}

@media all and (max-width:400px) {
	.flexslider,
	.full-height,
	.module-slides {
		min-height: 85vh;
		height: 85vh;
		padding: 0;
	}
}

/* flexslider ドット */
.flex-control-nav {
	width: 100%;
	position: absolute;
	bottom: 10px;
	text-align: center;
	z-index: 11;
}

.flex-control-paging li a {
	background: #fff;
	cursor: pointer;
	text-indent: -9999px;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	-o-box-shadow: none;
	box-shadow: none;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
}

.flex-control-paging li a:hover {
	background: #26A7C8;
}

.flex-control-paging li a.flex-active {
	background: #26A7C8;
	cursor: default;
}

.slider_txtbox {
	margin: 5px;
}

.flexslider .slide_box {
	background-color: #00000088;
	/* padding: 2rem; */
	color: white;
	/* font-size: 2rem; */
	width: 90%;
	height: 50%;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

@media ( min-width : 768px ) {
	.flexslider .slide_box {
		background-color: #00000088;
		/* padding: 2rem; */
		color: white;
		/* font-size: 2rem; */
		width: 50%;
		height: 50%;
		margin: auto;
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
	}
}

.flexslider .slide_box .slide_box_inner {
	display: flex;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 0 2rem;
	font-size: 2.5rem;
}

.flexslider .slide_box .slide_box_inner p {
	width: 100%;
	height: auto;
	font-size: 2.5rem;
}

body .flexslider .slide_box .slide_box_inner p span.em07 {
	line-height: 1.5;
	display: block;
}

@media (max-width: 991px) {
	.flexslider .slide_box .slide_box_inner p {
		font-size: 2.1rem;
	}
}

@media (max-width: 767px) {
	.flexslider .slide_box .slide_box_inner p {
		font-size: 2.2rem;
	}
}
@media (max-width: 575px) {
	.flexslider .slide_box .slide_box_inner p {
		font-size: 1.9rem;
	}
}

@media (max-width: 480px) {
	.flexslider .slide_box .slide_box_inner p {
		font-size: 1.7rem;
	}
}

a.link_aqua {
	font-family: 'YakuHanJP',"游ゴシック体", YuGothic, "YuGothic M", sans-serif;
	text-decoration: none;
	color: #fff;
	background: #42adc2;
	display: inline-block;
	border-radius: 3px;
	padding: 3px 7px;
	margin: 5px;
	-moz-box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
	-webkit-box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
	box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);
}





/** 06. module 追加
 **************************************************************** **/
.module_inner {
	padding:20px 20px;
	margin: 10px 0;
}

@media screen and (max-width: 767px){
	.module_inner {
		padding:10px 20px;
	}
}
/* 枠のradius指定 */
.module2.r5 {
	border-radius: 5px;
}
.module2.r6 {
	border-radius: 6px;
}
.module2.r7 {
	border-radius: 7px;
}
.module2.r8 {
	border-radius: 8px;
}
.module2.r9 {
	border-radius: 9px;
}
.module2.r10 {
	border-radius: 10px;
}

.slides_btn .module-blue {
	background: rgba(225,240,250,0.80);
}

.slides_btn .module-pink {
	background-color: rgba(250,230,238,0.80);
}

.slides_btn .module-blue:hover,.slides_btn .module-blue:active {
	background: rgba(112,168,206,0.80);
}

.slides_btn .module-pink:hover,.slides_btn .module-pink:active {
	background-color: rgba(241,151,186,0.80);
}

.slides_btn .module-blue:hover .tbcinergothic ,.slides_btn .module-pink:hover .pink   {
		color: #fff;
		text-decoration: none;
}

.slides_btn .label {
	font-family: tbcinergothic-std,"游ゴシック体", YuGothic, "YuGothic M", sans-serif;
}



/* moduleタイトル */
.module-title {
	margin: 0;
	padding: 0;
}

#content .module-title h2 {
	margin: 0 -4px 20px 0;
	letter-spacing: 4px;
	font-size: 25px;
	color: #3333333;
	border-bottom: 2px dashed #A58376;
	display:inline-block;
	padding: 0 10px 5px 10px;
	text-indent: 0em;
}

#content .module-title h2.brown {
	color: #A58376;
}


#content .module-title h2::before {
	display: none;
}

.module-title p {
	font-size: 16px;
}

.module-header.module-divider-top,
.module-sm.module-divider-top,
.module.module-divider-top {
	border-top: 1px solid #f2f2f2;
}




.owl-stage {
	display: flex;
	justify-content: center;
	align-items: center;
}



.client .title {
	font-family: tbcinergothic-std,"游ゴシック体", YuGothic, "YuGothic M", sans-serif;
	font-style: normal;
	font-weight: 600;
	font-size: 3vmin;
	color: #fff;
	display: block;
}

.tbcinergothic {
	font-family: tbcinergothic-std,"游ゴシック体", YuGothic, "YuGothic M", sans-serif;
	font-style: normal;
	font-weight: 600;
	color: #3498db;
	display: block;
}

.client .text {
	font-family: 'YakuHanJP',source-han-sans-japanese,"游ゴシック体", YuGothic, "YuGothic M", sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 1rem;
	color: #fff;
}



@media (max-width: 991px) {
	.client .title {
		font-size: 4vmin;
	}

	.client .text {
		font-size: 1rem;
	}
}

@media (max-width: 768px) {
/*	.module,
	.module-sm {
		padding: 15px 0 10px 0;
	}*/

	.client .title {
		font-size: 4.5vmin;
	}

	.client .text {
		font-size: 1rem;
	}


	.module-title h3,
	.module-title .h3 {
		font-size: 17px;
	}
}

@media (max-width: 480px) {
	.client .title {
		font-size: 4.9vmin;
	}

	.client .text {
		font-size: 0.9rem;
	}
}


.client {
	padding: 5px;
	-webkit-transition: all .4s ease-in-out;
	transition: all .4s ease-in-out;
}


.client:hover,
.team-item:hover .team-content,
.team-item:hover .team-content-social {
	opacity: 1;
}


.fullview .module-sm {
	padding: 10px 0;
	position: relative;
	z-index: 11;
}

.module-sm.module-yellow:hover {
	background-color: #ffe317;
}

.module-gray {
	background-color: #EEEEEE;
}

.module-yellow {
	background-color: #ffee00;
}

.module-green {
	background-color: #306B50;
}

.module-green2 {
    background-color: #d9eadd;
}




/* -------------------------------------------------- *
* タブデザイン
* -------------------------------------------------- */

/*タブのアクティブのデザイン変更*/
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
	color: #fff;
	cursor: default;
	background: #306B50;
	border: 1px solid #ddd;
	border-bottom-color: transparent;
}

.nav-tabs > li.active > a::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -9px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #306B50 transparent transparent transparent;
	border-width: 10px 10px 0 10px;
}

/*タブの高さの変更*/
.nav > li > a {
	position: relative;
	display: block;
	padding: 20px 15px;
}


/*タブの角丸の変更*/
	.nav-tabs-justified > li > a,
	.nav-tabs.nav-justified > li > a {
		border-bottom: 0px solid #ddd;
		border-radius: 0px 0px 0 0;
	}
	.nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
	.nav-tabs-justified > .active > a:hover,
	.nav-tabs.nav-justified > .active > a:hover,
	.nav-tabs-justified > .active > a:focus,
	.nav-tabs.nav-justified > .active > a:focus {
		border-bottom-color: #f9f9f9;
	}



/*タブの隣とのスペース*/
.nav > li > a {
	margin-left: 0px;
	margin-right: 0px;
	background-color: #EFEFEF;
	border: 0px solid #fff;
}


/*タブの下方向のスペース*/
#content .nav.nav-tabs {
	margin: 10px 0 0 0;
	padding-left: 0;
}


/*タブの文字レイアウト*/
.nav-tabs > li > a,
.nav-tabs > li > a:hover,
.nav-tabs > li > a:focus {
	font-size: 16.5px;
	font-weight: 600;
	color: #306B50;
	text-decoration: none;
}


/*タブの文字[step]のレイアウト*/
.nav-tabs > li.active > a .kan412,
.nav-tabs > li.active > a .kan412:hover,
.nav-tabs > li.active > a .kan412:focus {
	color: #fff;
	font-family: kan412typos-std, sans-serif;
	font-size: 20px;
	letter-spacing: 2px;
}


.nav-tabs > li > a .kan412,
.nav-tabs > li > a .kan412:hover,
.nav-tabs > li > a .kan412:focus {
	font-family: kan412typos-std, sans-serif;
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 2px;
}


.tab-content {
	padding: 30px 20px;
	background-color: rgba(255,255,255,0.5);
}


/*タブ内のラベルレイアウト*/
.nav-tabs > li.active > a .label-default.label-outline {
	font-size:13px;
	font-weight: 900;
	background-color: #fff;
	border: solid 0px #666666;
	color: #306B50;
}


.nav-tabs > li > a .label-default.label-outline {
	font-size:13px;
	font-weight: 900;
	background-color: #306B50;
	border: solid 0px #666666;
	color: #fff;
}




@media (max-width: 768px) {
.nav-tabs > li.active > a .kan412,
.nav-tabs > li.active > a .kan412:hover,
.nav-tabs > li.active > a .kan412:focus {
	font-size: 17px;
}

.nav-tabs > li > a .kan412,
.nav-tabs > li > a .kan412:hover,
.nav-tabs > li > a .kan412:focus {
	font-size: 17px;
}


#nav_steps.nav > li > a {
	width: 50%;
	float: left;
	border-radius: 0px;
	padding: 10px;
}

.nav-justified > li > a, .nav-tabs.nav-justified > li > a {
	margin-bottom: 0;
}
}




/** sitemap page2top 位置調整
 **************************************************************** **/
@media (max-width: 480px){
	#sitemap {
		padding: 0 0 105px 0;
	}
	#global_footer {
		bottom: 95px;
	}
	#page2top {
		bottom: 90px;
		z-index: 9999;
	}
}
@media (max-width: 320px){
	#sitemap {
		padding: 0 0 120px 0;
	}
	#global_footer {
		bottom: 109px;
	}
}





/* 画像なしのサムネイル */
.topthum-wrap{
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	margin-bottom: 10px;
	border: 2px solid #f5f5f5;
	position: relative;
	overflow: hidden;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
.topthum-wrap::before{
	background-color: #2b895e;
}
.topthum-title {
	position: absolute;
	display: table;
	width:100%;
	height: 100%;
	margin: 0 auto;
}
a.card .topthum-title p{
	display: table-cell;
	vertical-align:middle;
	font-weight: 600;
	width:100%;
	text-align: center;
	font-size: 1.2em;
	color:#FFFFFF;
	padding: 0 3px;
	text-shadow: 0px 0px 8px rgba(0,0,0,0.8);
	line-height: 1.3;
}
.bg-dark {
	color: #fff;
}

@media (max-width: 1191px) {
		a.card .topthum-title p{
			font-size: 1.2em;
		}
}
@media (max-width: 991px) {
		a.card .topthum-title p{
			font-size: 1em;
		}
}
@media (max-width: 768px) {
	a.card .topthum-title p{
		font-size: 1.2em;
	}
}
@media (max-width: 480px) {
	a.card .topthum-title p{
		font-size: 0.9em;
	}
}
@media (max-width: 320px){
	a.card .topthum-title p{
		font-size: 0.9em;
	}
}


