@charset "UTF-8";



/** ************************************* **

	TABLE CONTENTS
	---------------------------
		01. Globals
		02. 背景画像
		03. flexslider
		04. module
		05. 4stepサムネイルレイアウト
		06. 4stepサムネイル ラベル部分
		07. web font
		08. top_button
		09. Stripe button
		10. toggle
		11. thumbnail
		12. bootstrap 調整
		13. circle button
		14. sns button
		15. sitemap page2top 位置調整
		16. owlカルーセル ドットデザイン
		17. タブデザイン
		18. thumbnail関連
		19. 丸吹き出し
	---------------------------

 ** ************************************* **/





/** 01. Globals
 **************************************************************** **/
#global_header {
	background-color: transparent;
}
#header h1 {				/* ヘッダー画像貼り替え */
	background-image: url(/tohoku/images/common/logo_newlife-light@2x.svg);
}
#global_header.header-shadow #header h1,#global_header.rltv #header h1 {        /* ヘッダー画像貼り替え */
	background-image: url(/tohoku/images/common/logo_newlife@2x.svg);
}
@media (max-width: 768px) {
	#global_header #header h1 {				/* ヘッダー画像貼り替え */
		background: url(/tohoku/images/common/logo_newlife-light@2x.svg) no-repeat 0 0;
	}
	#global_header.header-shadow #header h1,#global_header.rltv #header h1 {        /* ヘッダー画像貼り替え */
		background-image: url(/tohoku/images/common/logo_newlife@2x.svg);
	}
}
#global_header .menu-cart {
	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: #AE3249;
}
#container.container {
	padding-top: 42px;
}
@media (max-width: 768px) {
	#container .fullview {
		position:relative;
		margin-top: -42px;
	}
}
#breadcrumb {
	display: none;
}

#content a {
	text-decoration: none;
}
#content .portfolio-caption .status ul {
	margin: 0;
	padding-left: 0em;
}
.content_inner {
	margin: 0 5%;
}
@media (max-width: 768px) {
	.content_inner{
		margin: 0;
	}
}

.top_space10 {
	margin-top: 10px;
}
.top_space20 {
	margin-top: 20px;
}
.top_space30 {
	margin-top: 30px;
}
.top_space40 {
	margin-top: 40px;
}
.top_space50 {
	margin-top: 50px;
}

.contact.twitter {
	padding: 0.5em;
	margin: 0.8em 0 0.5em;
}
.twitter-wrap{
	width: auto;
	height: 450px;
	overflow: scroll;
}


.top_banner a:visited {
 color: #fff
}


@media (max-width: 768px) {
    #Affix, #Affix2 {
        z-index: 999;
        right: 5px;
        position: fixed;
        bottom: 140px;
    }
}



/** 02. 背景画像
 **************************************************************** **/
#aboutus,#service,#freshman,#event {
	position: relative;
}
#aboutus .bg {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-image: url(../images/top/top_backimage01.png);
	background-repeat: no-repeat;
	background-position: right bottom 25%;
	background-size:25% auto;
	z-index: -1;
}
#service .bg {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-image: url(../images/top/top_backimage02.png);
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size:20% auto;
	z-index: -1;
}
#event .bg2 {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-image: url(../images/top/top_backimage03.png);
	background-repeat: no-repeat;
	background-position: right bottom 10%;
	background-size: 35% auto;
	z-index: -1;
}
@media (min-width: 769px) {
	#freshman .bg2 {
		display: none;
	}
}
@media (max-width: 768px) {
	#freshman .bg2 {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		background-image: url(../images/top/top_backimage02_sp.png);
		background-repeat: no-repeat;
		background-position: right top 25%;
		background-size:30% auto;
		z-index: -1;
	}
	#service .bg {
		display: none;
	}
}









/** 03. flexslider
 **************************************************************** **/
.flexslider {
	border: 0;
	margin: 0;
}
.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 li a{
	color: #fff;
}
.flex-direction-nav a {
	text-shadow: none;
	line-height: 60px;
	color: #fff;
	width: 30px;
	height: 60px;
	margin: -30px 0 0;
	opacity:.8;
	z-index: 2;
}
.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;
}

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

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



/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.slide-background.pc { display: block !important; }
.slide-background.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
.slide-background.pc { display: none !important; }
.slide-background.sp { display: block !important; }
}

/* 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; }
}
/*.page-loader,body:after {
	position:fixed;
	right:0;
	z-index:9998;
	left:0;
	bottom:0;
}*/



.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%;
	width: 90%;
}
.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:20px;
	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;
}
.slides_h1{
	font-size: 7vw;
}
.slides_h2{
	font-size: 2.5vw;
	margin: 5px 0 10px 0;
}
.slides_h3{
	font-size: 3vw;
	margin: 5px 0 10px 0;
}
.slides_h4{
	font-size: 2vw;
	margin: 0px 0 0px 0;
}



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



@media (max-width:992px){
	.slides-navigation a.prev{
	left:20px
	}
	.slides-navigation a.next{
	right:20px
	}
	.slides_h1{
	font-size: 8vw;
}
.slides_h2{
	font-size: 4vw;
	margin: 5px 0 10px 0;
}
.slides_h3{
	font-size: 3.5vw;
	margin: 5px 0 10px 0;
}
.slides_h4{
	font-size: 2.5vw;
	margin: 0px 0 0px 0;
}
}
@media all and (max-width:768px){
	.flex-direction-nav{
	display:none
	}
	.kenburns .slides li .slide-background{
	-webkit-animation:none!important;animation:none!important
	}   

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


@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
	}
	
		.slides_h1{
		font-size: 15vw;
	}
	.slides_h2{
		font-size: 5vw;
		margin: 5px 0 10px 0;
	}
	.slides_h3{
		font-size: 4.5vw;
		margin: 5px 0 10px 0;
	}
	.slides_h4{
	font-size: 4vw;
	margin: 0px 0 0px 0;
}
}



@media (max-width: 480px) {
	.slides_h1{
		font-size: 16vw;
	}
	.slides_h2{
		font-size: 5vw;
		margin: 5px 0 10px 0;
	}
	.slides_h3{
		font-size: 6vw;
		margin: 5px 0 10px 0;
	}
	.slides_h4{
	font-size: 4vw;
	margin: 0px 0 0px 0;
}
}

/* flexslider ドット */
.flex-control-nav {
	width: 100%;
	position: absolute;
	bottom: 10px;
	text-align: center;
	z-index: 2;
}
.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: #AE3249;
}
.flex-control-paging li a.flex-active {
	background: #AE3249;
	cursor: default;
}
@media (max-width:992px){
	.slides-navigation a.prev{
		left:20px;
	}
	.slides-navigation a.next{
		right:20px;
	}
}
@media all and (max-width:768px){
	.flex-direction-nav{
		display:none;
	}
	.kenburns .slides li .slide-background{
	-webkit-animation:none!important;animation:none!important
	}
}
@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;
	}
}









/** 04. module
 **************************************************************** **/
.module-title {
	margin: 0;
	padding: 0;
}
.module-title h2 {
	margin: 0 -4px 0px 0;
	letter-spacing: 4px;
	font-size: 23px;
	color: #464545;
	border-bottom: 2px solid #464545;
	display: inline-block;
	padding: 8px;
}
.module-title p{
	font-size: 16px
}
.module-header.module-divider-bottom,.module-page-title,.module-sm.module-divider-bottom,.module.module-divider-bottom{
	border-bottom:1px solid #f2f2f2
}
.module,.module-header,.module-sm{
	background-color:#eeeee;background-position:50%;background-repeat:no-repeat;background-size:cover;position:relative;padding:250px 0
}
.module-header.module-divider-top,.module-sm.module-divider-top,.module.module-divider-top{
	border-top:1px solid #f2f2f2
}
.module,.module-sm {
	padding: 10px 0;
}
.module-sm {
	padding:5px 0
}
.module-gray {
	background-color:#EEEEEE
}











/** 05. 4stepサムネイルレイアウト
 **************************************************************** **/
.row-portfolio .grid-sizer,.row-portfolio .portfolio-item {
	width: 33.333333%;
	float: left;
	overflow: hidden;
	padding: 5px;
}
.row-portfolio[data-columns="2"] .grid-sizer,.row-portfolio[data-columns="2"] .portfolio-item {
	width: 50%
}
.row-portfolio[data-columns="4"] .grid-sizer,.row-portfolio[data-columns="4"] .portfolio-item {
	width: 25%
}
.portfolio-caption,.portfolio-overlay{
	width: 100%;
	opacity: 0;
	z-index: 1;
	left: 0;
}
.row-portfolio.row-related-portfolio{
	margin-left: -10px;
	margin-right: -10px;
}
.row-portfolio.row-related-portfolio .grid-sizer,.row-portfolio.row-related-portfolio .portfolio-item {
	padding:0 10px 20px;
}
.row-portfolio.row-gutter .grid-sizer,.row-portfolio.row-gutter .portfolio-item {
	padding:10px;
}
.portfolio-caption,.portfolio-overlay,.portfolio-subtitle,.portfolio-title,.portfolio-wrapper img {
	-webkit-transition:all .3s cubic-bezier(.3,.1,.58,1);
	transition:all .3s cubic-bezier(.3,.1,.58,1);
}
.portfolio-wrapper {
	position: relative;
	overflow: hidden;
}
.portfolio-overlay {
	position: absolute;
	background: rgba(49,49,49,.95);
	top: 0;
	height: 100%;
	padding: 0;
	margin: 0
}
.portfolio-caption {
	position: absolute;
	padding: 25px;
	top: 50%;
	text-align: center
}
.portfolio-title {
	line-height: 1.8;
	font-size: 15px;
	font-weight: 900;
	color: #fff;
	margin: 0;
	display: inline-block;
	padding: 0;
		-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
}
.ps-all,.ps-all a,.ps-all a>.arrows:before,.ps-next,.ps-next a,.ps-next a>.arrows:before,.ps-prev,.ps-prev a,.ps-prev a>.arrows:before {
	line-height:40px;
}
.portfolio-subtitle {
	font-size:14px;
	opacity:.7;
}
.portfolio-link {
	position: absolute;
	z-index: 3;
	bottom: 0;
	right: 0;
	left: 0;
	top: 0;
}
.portfolio-item:hover .portfolio-wrapper img {
	-webkit-transform:scale(1.2);
	transform:scale(1.2);
}
.portfolio-item:hover .portfolio-overlay {
	opacity:1;
}
.portfolio-item:hover .portfolio-caption {
	opacity:1;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);
}
.row-portfolio[date-portfolio-type=standard] .portfolio-caption {
	position:relative;
	opacity:1;
	top:0;
}
.row-portfolio[date-portfolio-type=standard] .portfolio-item .portfolio-title {
	color:#313131;
}
.row-portfolio[date-portfolio-type=standard] .portfolio-item:hover .portfolio-title {
	color: #F56883;
}
.row-portfolio[date-portfolio-type=standard] .portfolio-item:hover .portfolio-caption {
	-webkit-transform:translateY(-20%);
	transform:translateY(-20%);
}
@media (max-width:1199px){
	.row-portfolio[data-columns="4"] .grid-sizer,.row-portfolio[data-columns="4"] .portfolio-item {
	width:33.333333%;
	}
}
@media (max-width:991px){
	.row-portfolio .grid-sizer,.row-portfolio .portfolio-item,.row-portfolio[data-columns="4"] .grid-sizer,.row-portfolio[data-columns="4"] .portfolio-item{
	width:50%;
	}
}
@media (max-width:767px){
	.row-portfolio .grid-sizer,.row-portfolio .portfolio-item,.row-portfolio[data-columns="2"] .grid-sizer,.row-portfolio[data-columns="2"] .portfolio-item,.row-portfolio[data-columns="4"] .grid-sizer,.row-portfolio[data-columns="4"] .portfolio-item{
	width:100%
	}
}




/** 06. 4stepサムネイル ラベル部分
 **************************************************************** **/
/* 吹き出しメニュー */
#portfolio-menu div {
	position: relative;
}
#portfolio-menu .portfolio-item {
	position: relative;
}
/* 半円 */
#portfolio-menu .portfolio-item .portfolio-wrapper:before {
	content: "";
	background : #B7324B;/* ラベルの色はここで変更 */
	position : absolute ;
	left : 0;
	top : 0;
	width : 5em;
	height : 5em;
	-moz-border-radius : 0px 0px 99px 0px;
	-webkit-border-radius : 0px 0px 99px 0px;
	border-radius : 0px 0px 99px 0px;
	z-index: 4;
	box-shadow: 2px 2px 5px  rgba(0,0,0,0.2) ;
}
#portfolio-menu .portfolio-wrapper {
	position: relative;
}

#portfolio-menu .portfolio-item .portfolio-step {
	color: #fff; /* 文字色はここで変更 */
	font-weight: bold;
	transform: rotate(-45deg);
	position: absolute;
	top:22px;
	left:12px;
	background-color: transparent;
	z-index: 5;
}
.portfolio-caption {
}
.portfolio-caption ul.status {
	text-align: center;
	padding:0;
	margin: 0;
	width: 100%;
}
.portfolio-caption ul.status li {
	text-align: center;
	padding:0;
	margin: 0;
	width: 100%;
}
.portfolio-caption .status ul {
	position: absolute;
	top: -999em;
	width: 100%;
	max-width: 100%;
	background-color: #000000a6;
	line-height: 1.0;
	text-align: left;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	padding: 0;
	margin:0;
}
.portfolio-caption .status ul li {
	list-style: none;
	-webkit-border-radius: 4px !important;
	-moz-border-radius: 4px !important;
	border-radius: 4px !important;
	position:relative;
}
.portfolio-caption .status ul > li {
	 margin: 0;
}
.portfolio-caption .status ul > li a {
	color: #ffffff;
	display: block;
	padding: 3px 0;
	position: relative;
	line-height: 18px;
	-webkit-border-radius: 4px !important;
	-moz-border-radius: 4px !important;
	border-radius: 4px !important;
	-webkit-transition: 0.25s;
	-moz-transition: 0.25s;
	-o-transition: 0.25s;
	transition: 0.25s;
	text-align: center;
	font-weight: 900;
	font-size:13px;
}
.portfolio-caption .status ul > li a:hover {
	-webkit-transition: 0.25s;
	-moz-transition: 0.25s;
	-o-transition: 0.25s;
	transition: 0.25s;
	background-color: #F56883;
	position: relative;
}
.portfolio-caption .status ul > li.top a {;
	padding: 6px 0 3px 0;
}
.portfolio-caption .status ul > li.bottom a {;
	padding: 3px 0 6px 0;
}
.portfolio-caption .status ul .arrow {
	width: 0;
	height: 0;
	border-color: transparent;
	border-style: solid;
	left: 50%;
	transform: translateX(-50%);
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	border-top: 15px solid #000000a6;
}
.portfolio-caption .status li:hover {
	visibility:		inherit;
    /* fixes IE7 'sticky bug' */
}
/* fukidasai 1 */
#step1_fukidashi {
	position: relative;
}
#step1_fukidashi {
	position: relative;
}
#step1_fukidashi .status ul .arrow {
	position: absolute;
	top: 78px;
}
#step1_fukidashi .status li ul.over {
	left: 0px;
	top: -78px;
	z-index: 999;
}
/* fukidasai 2 */
#step2_fukidashi {
	position: relative;
}
#step2_fukidashi .status ul .arrow {
	position: absolute;
	top: 173px;
}
#step2_fukidashi .status li ul.over {
	right: 0px;
	top: -173px;
	z-index: 999;
}
/* fukidasai 3 */
#step3_fukidashi {
	position: relative;
}
#step3_fukidashi .status ul .arrow {
	position: absolute;
	top: 198px;
}
#step3_fukidashi .status li ul.over {
	right: 0px;
	top: -198px;
	z-index: 999;
}
/* fukidasai 4 */
#step4_fukidashi {
	position: relative;
}
#step4_fukidashi .status ul .arrow {
	position: absolute;
	top: 78px;
}
#step4_fukidashi .status li ul.over {
	right: 0px;
	top: -78px;
	z-index: 999;
}










/** 07. web font
 **************************************************************** **/
.kan412 {
	font-family: kan412typos-std, sans-serif;
}
h2.kan412 {
	font-family: kan412typos-std, sans-serif;
	vertical-align: middle;
}
.source-han-sans {
	font-family: source-han-sans-japanese, sans-serif;
	font-style: normal;
	font-weight: 100;
}
h2.source-han-sans {
	font-family: source-han-sans-japanese, sans-serif;
	font-style: normal;
	font-weight: 100;
}
#content h2.source-han-sans {
	font-family: source-han-sans-japanese, sans-serif;
	font-style: normal;
	font-weight: 100;
	padding: 10px;
	text-indent: 0em;
}
#content h2.source-han-sans:before {
	display: none;
}
.OpenSans {
	font-family: 'Open Sans', sans-serif;
	text-transform:capitalize;
}
h2.OpenSans {
	font-family: 'Open Sans', sans-serif;
	text-transform:none;
	color: #464545;
	border-bottom: 2px solid #a5a5a5;
}
#content h2.OpenSans {
	font-family: 'Open Sans', sans-serif;
	text-transform:none;
	color: #464545;
	padding: 10px;
	text-indent: 0em;
	border-bottom: 2px solid #a5a5a5;
}
#content h2.OpenSans:before {
	display: none;
}


















/** 08. top_button
 **************************************************************** **/
.top_button ul {
	display: -webkit-box;
	display: -moz-box;
	display: flexbox;
	display: flex;
	margin: 0;
	padding: 10px 0 5px;
	list-style: none;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	justify-content: center;
}
.top_button a, .top_button a:link, .top_button a:visited {
	text-decoration: none;
}
.top_button a:hover{
	transition: all .2s ease;
	-webkit-transition: all .2s ease;
}
.top_button li {
	display: inline-block;
	text-decoration: none;
	color: #000000;
	padding: 5px 3px;
	text-align: center;
	width: 25%;
	-webkit-box-flex: initial;
	-moz-box-flex: initial;
	-ms-flex: initial;
	flex: initial;
}
@media screen and (max-width: 991px){
	.top_button li {
		width: 33.33%;
	}
}
@media screen and (max-width: 768px){
	.top_button li {
		width: 50%;
	}
}
@media screen and (max-width: 480px){
	.top_button li {
		width: 14.2%;
	}
}
.top_button li a {
	position: relative;
	display: block;
	text-align: center;
	border: 3px solid #AE3249;
	padding:2px 5px 12px 5px;
	margin: 0 5px;
	box-sizing: border-box;
	font-weight: 600;
	text-transform: uppercase;
	-webkit-tap-highlight-color: transparent;
	transition: 0s ease-out;
	color: #232323;
}
.top_button li a:after {
	font-family: 'Font Awesome 5 Free';
	content: "\f054";
	color: #AE3249;
	font-weight: 600;
	font-size: 1.2em;
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -12px;
}
.top_button li a:hover {
	background-color: rgba(174,50,73,0.20);
	border: 3px solid #AE3249;
}
.top_button li a .document_icon:before {
	position:relative;
	top: 8px;
	right: 3px;
	content: url(../images/icon/01_document.svg);
	display: inline-block;
	width: 30px;
	height: 30px;
}
.top_button li a .team_icon:before {
	position:relative;
	top: 8px;
	right: 3px;
	content: url(../images/icon/02_team.svg);
	display: inline-block;
	width: 30px;
	height: 30px;
}
.top_button li a .presen_icon:before {
	position:relative;
	top: 8px;
	right: 3px;
	content: url(../images/icon/03_presen.svg);
	display: inline-block;
	width: 30px;
	height: 30px;
}
.top_button li a .memo_icon:before {
	position:relative;
	top: 8px;
	right: 3px;
	content: url(../images/icon/04_memo.svg);
	display: inline-block;
	width: 30px;
	height: 30px;
}
.top_button li a .goal_icon:before {
	position:relative;
	top: 8px;
	right: 3px;
	content: url(../images/icon/05_goal.svg);
	display: inline-block;
	width: 30px;
	height: 30px;
}
.top_button li a .house_icon:before {
	position:relative;
	top: 8px;
	right: 3px;
	content: url(../images/icon/06_house.svg);
	display: inline-block;
	width: 30px;
	height: 30px;
}
.top_button li a .pc_icon:before {
	position:relative;
	top: 8px;
	right: 3px;
	content: url(../images/icon/07_pc.svg);
	display: inline-block;
	width: 30px;
	height: 30px;
}
.top_button li a .cart_icon:before {
	position:relative;
	top: 8px;
	right: 3px;
	content: url(../images/icon/08_cart.svg);
	display: inline-block;
	width: 30px;
	height: 30px;
}
.top_button li a:hover:before{
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.top_button li a:active:before{
	top: 7px;
	reft: -7px;
	width: 100%;
	height: 100%;
	z-index: -1;
}
@media (max-width: 480px) {
	.top_button ul{
		position: fixed;
		width: 100%;
		bottom:0px;
		padding: 0px 0 5px;
		z-index: 101;
		background-color: rgba(255,255,255,0.80);
		box-shadow: 0 1px 6px 0 rgb(32 33 36 / 28%);
	}
	.top_button li {
		margin: 3px auto;
	}
	.top_button li a {
		position: relative;
		border: 0px solid #232323;
		padding:0;
		margin: auto;
		box-sizing: border-box;
		font-weight: 600;
		text-transform: uppercase;
		text-decoration: none;
		color: #232323;
		text-align: center;
		line-height: 1.2;
		font-size: 9px;
		z-index: 1001;
	}
	.top_button li a:after {
		display: none;
	}
	.top_button li a:hover {
		background-color: rgba(250,110,89,0.0);
		border: 0px solid #AE3249;
	}
	.top_button li a .document_icon:before {
		position:relative;
		margin: 0 auto 3px;
		top: 0px;
		right: 0px;
		content: url(../images/icon/01_document.svg);
		display: block;
		width: 30px;
		height: 30px;
	}
	.top_button li a .team_icon:before {
		position:relative;
		margin: 0 auto 3px;
		top: 0px;
		right: 0px;
		content: url(../images/icon/02_team.svg);
		display: block;
		width: 30px;
		height: 30px;
	}
	.top_button li a .presen_icon:before {
		position:relative;
		margin: 0 auto 3px;
		top: 0px;
		right: 0px;
		content: url(../images/icon/03_presen.svg);
		display: block;
		width: 30px;
		height: 30px;
	}
	.top_button li a .memo_icon:before {
		position:relative;
		margin: 0 auto 3px;
		top: 0px;
		right: 0px;
		content: url(../images/icon/04_memo.svg);
		display: block;
		width: 30px;
		height: 30px;
	}
	.top_button li a .goal_icon:before {
		position:relative;
		margin: 0 auto 3px;
		top: 0px;
		right: 0px;
		content: url(../images/icon/05_goal.svg);
		display: block;
		width: 30px;
		height: 30px;
	}
	.top_button li a .house_icon:before {
		position:relative;
		margin: 0 auto 3px;
		top: 0px;
		right: 0px;
		content: url(../images/icon/06_house.svg);
		display: block;
		width: 30px;
		height: 30px;
	}
	.top_button li a .pc_icon:before {
		position:relative;
		margin: 0 auto 3px;
		top: 0px;
		right: 0px;
		content: url(../images/icon/07_pc.svg);
		display: block;
		width: 30px;
		height: 30px;
	}
	.top_button li a .cart_icon:before {
		position:relative;
		margin: 0 auto 3px;
		top: 0px;
		right: 0px;
		content: url("../images/icon/08_cart.svg");
		display: block;
		width: 30px;
		height: 30px;
	}
}

/*===== TOP 緊急連絡ボタン =====*/
.topmenu {
	padding: 0;
	margin: 12px 12px ;
}
.topmenu .btn {
	font-size: 1.5em;
	box-shadow: none;
	line-height: 1.3;
	display: flex;
	-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
	align-items: center;
	-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
	justify-content: center; /* 横方向中央揃え */
}
.topmenu .label {
	padding: 0.05em 0.5em;
	line-height: 1.5;
	margin-left: 0px;
	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: 0.5em 0;
	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;
}
/******************ボーダーボタン green*******************/
.topmenu .btn.btn-green.btn-square {
	background: repeating-linear-gradient(to top, #56b550, #64C15E, #8CC689 4px, #56b550 3px);
	color: #FFF;
	border: solid 1px #fff;
	outline: solid 3px #56b550;
}
.topmenu .btn.btn-green.btn-square:hover,.topmenu .btn.btn-green.btn-square:active,.topmenu .btn.btn-green.btn-square:active:focus {
	background: repeating-linear-gradient(to top, #4D9D48, #4D9D48, #66BC60 4px, #4D9D48 3px);
	color:#FFF;
	border: solid 1px #fff;
	outline: solid 3px #4C9F46;
	outline-offset: 0px;
}

/******************ボーダーボタン green*******************/
.topmenu .btn.btn-yellow.btn-square {

	background: repeating-linear-gradient(to top, #FFDA4B, #FFDA4B, #FFDA4B 4px, #FFDA4B 3px);
	color: #333;
	border: solid 1px #fff;
	outline: solid 3px #FFDA4B;
}
.topmenu .btn.btn-yellow.btn-square:hover,.topmenu .btn.btn-yellow.btn-square:active,.topmenu .btn.btn-yellow.btn-square:active:focus {
	background: repeating-linear-gradient(to top, #ffd11e, #ffd11e, #ffd11e 4px, #ffd11e 3px);
	color:#333;
	border: solid 1px #fff;
	outline: solid 3px #ffd11e;
	outline-offset: 0px;
}
/******************ボーダーボタン内のラベル*******************/
.topmenu .label-default.label-outline {
	background-color:#fff;
	border: solid 0px #666666;
}
/* apua */
.topmenu .btn-blue .label-default.label-outline {
	color: #2D92D7;
}
/* pink */
.topmenu .btn-pink .label-default.label-outline {
	color: #f94d50;
}
/*===== // TOP 緊急連絡ボタン =====*/
















/** 09. Stripe button
 **************************************************************** **/
/* 影ストライプボタン */
.content_bottun a {
	position: relative;
	width: 50%;
	display: block;
	text-align: center;
	padding: 12px 12px;
	margin: 0 auto;
	box-sizing: border-box;
	font-weight: 600;
	text-transform: uppercase;
	text-decoration: none;
	color: #232323;
	border: 3px solid #232323;
	background-color: #fff;
}
.content_bottun a:active:before {
	top: 7px;
	reft: -7px;
	width: 100%;
	height: 100%;
	z-index: -1;
}
.content_bottun a:before {
	content: "";
	position: absolute;
	top: 7px;
	left: 7px;
	width: calc(100% + 3px);
	height: calc(100% + 3px);
	background-color: #f9d159;
	transition: all 0.3s ease;
}
.content_bottun a:after {
	font-family: 'Font Awesome 5 Free';
	content: "\f054";
	font-weight: 600;
	font-size: 1.2em;
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -12px;
	color: #3498db;
	z-index: 2;
}
.content_bottun a.btn_aqua:before {		/* 影の色 青 */
	background: repeating-linear-gradient(-45deg, #84C0E9 0px, #84C0E9 8px, #fff 8px, #fff 16px);
	z-index: -1;
}
@media (max-width: 480px) {
	.content_bottun a {
		width: 80%;
	}
}












/** 10. toggle
 **************************************************************** **/
#content .tiles-toggle {
	position: relative;
	margin:10px -10px;
}
#content .tiles-toggle > a {
	position:relative;
	display: block;
	padding: 10px 10px 10px 2.5em;
	text-decoration: none;
}
#content .tiles-toggle > a.collapsed {
	position: relative;
	display: block;
	padding: 10px 10px 10px 2.5em;
	text-decoration: none;
}
#content .tiles-toggle > a:after {
	font-family: 'Font Awesome 5 Free';
	font-weight: 600;
	content: "\f068";
	position: absolute;
	right: 10px;
	border: solid 1px rgba(255,255,255,0.90);
	padding: 12px 17px;
	margin: -11px -11px 0;
}
#content .tiles-toggle > a.collapsed:after {
	font-family: 'Font Awesome 5 Free';
	font-weight: 600;
	content: "\f067";
	position: absolute;
	right: 10px;
	padding: 12px 17px;
	margin: -11px -11px 0;
}
#content .tiles-toggle > a:before{
	position: absolute;
	margin: 10px;
	left:0;
	top:0;
	content: url(../images/top/logo_newlife.svg);
	display: inline-block;
	width: 30px;
	height: 30px;
}
#toggle-freshman,#toggle-event,#toggle-exam {
	color: #fff;
	font-size:1.3em;
}
.tiles-toggle i {
	font-size:1.5em;
}
/*受験生*/
#toggle-exam {
	background-color: #EA8A99;
}
/*合格者*/
#toggle-freshman {
	background-color: #EA8A99;
}
/*大学生活*/
#toggle-event {
	background-color: #EA8A99;
}
@media (max-width: 768px) {
	#toggle-freshman,#toggle-event,#toggle-exam {
		font-size: 1.1em;
	}
	.tiles-toggle i {
		 padding-right: 5px;
	}
}
/*オコーディオン内のラベルレイアウト*/
.tiles-toggle #toggle-exam .label-default.label-outline {
	font-size: 13px;
	font-weight: 900;
	background-color: #fff;
	border: solid 0px #666666;
	color: #EA8A99;
}
.tiles-toggle #toggle-freshman .label-default.label-outline {
	font-size: 13px;
	font-weight: 900;
	background-color: #fff;
	border: solid 0px #666666;
	color: #EA8A99;
}
.tiles-toggle #toggle-event .label-default.label-outline {
	font-size: 13px;
	font-weight: 900;
	background-color: #fff;
	border: solid 0px #666666;
	color: #EA8A99;
}











/** 11. thumbnail
 **************************************************************** **/
.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.end{
	margin-bottom: 0px;
}
.topthum-wrap h4{
	font-size: 15px;
}
.topthum-wrap h4:hover{
	font-size: 15px;
	text-transform: uppercase;
	text-decoration: none;
}
.topthum-wrap:hover .topthum-hover{
	opacity: 1;
	text-decoration: none;
}
.topthum-label{
	position: absolute;
	top:0;
	left: 0;
	padding: 4px 10px;
	font-size: 13px;
	color:#fff;
	background: #333;
}
.topthum-title {
	position: absolute;
	display: table;
	width:100%;
	height: 100%;
	margin: 0 auto;
}
#content .topthum-title p{
	display: table-cell;
	vertical-align:middle;
	font-weight: 600;
	width:100%;
	text-align: center;
	font-size: 1.7em;
	color:#FFFFFF;
	padding: 0 3px;
	text-shadow: 0px 0px 8px rgba(0,0,0,0.8);
	line-height: 1.3;
}
#content .topthum-title p.sm{
	display: table-cell;
	vertical-align:middle;
	font-weight: 600;
	width:100%;
	text-align: center;
	font-size: 1.4em;
	color:#FFFFFF;
	padding: 0 3px;
	text-shadow: 0px 0px 8px rgba(0,0,0,0.8);
	line-height: 1.3;
}
#content .topthum-title p span.topthum-subtitle{
	display: block;
	padding-top: 3px;
	font-size: 0.6em;
	line-height: 1.3;
}
.topthum-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.80);
	text-align: center;
	opacity: 0;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}
#content .topthum-hover p{
	position: absolute;
	width:100%;
	top:50%;
	margin-top: -10px;
	text-align: center;
	font-size: 18px;
	color:#fff;
	text-transform: uppercase;
}
@media (max-width: 991px) {
		#content .topthum-title p{
			font-size: 1.4em;
		}
		#content .topthum-title p.sm{
		font-size: 1.0em;
		}
		#content .topthum-title p span.topthum-subtitle{
		display: block;
		padding-top: 3px;
		font-size: 0.7em;
		line-height: 1.3;
	}
}
@media (max-width: 768px) {
	#content .topthum-title p{
		font-size: 1.3em;
	}
	#content .topthum-title p span.topthum-subtitle{
	font-size: 0.7em;
	}
}
@media (max-width: 480px) {
	#content .topthum-title p{
		font-size: 1.1em;
	}
	#content .topthum-title p.sm{
		font-size: 0.8em;
		}
	#content .topthum-title p span.topthum-subtitle{
	font-size: 0.6em;
	}
}
@media (max-width: 320px){
	#content .topthum-title p{
		font-size: 0.9em;
	}
	#content .topthum-title p.sm{
		font-size: 0.6em;
		}
	#content .topthum-title p span.topthum-subtitle{
	font-size: 0.6em;
	}
}












/** 12. bootstrap 調整
 **************************************************************** **/
 .row {
	margin-right: -7px;
	margin-left: -7px;
}


.row::before,
.row::after {
	display: table;
	content: " ";
}


.row::after {
	clear: both;
}

 
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
	position: relative;
	min-height: 1px;
	padding-right: 7px;
	padding-left: 7px;
}









/** 13. circle button
 **************************************************************** **/
.circle_btn_wrap a{
	color: #333;
	font-size: 1em;
	font-weight: 600;
}
@media (max-width: 768px){
	.circle_btn_wrap a{
		font-size: 2.1vw;
	}
}

@media (max-width: 480px){
	.circle_btn_wrap a{
		font-size: 2vw;
	}
}
.circle_btn{
	margin: 10px 0 0;
	position: relative;
	display: inline-block;
	height:200px;
	width: 200px;
	border-radius: 50%;
	-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);
	-webkit-tap-highlight-color: transparent;
	transition: .3s ease-out;
}
.circle_btn::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	border-radius: 50%;
	background:rgba(255,255,255,0.00);
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;
}
.circle_btn.bt-001:hover::after {
	background:rgba(131,147,202,0.50);
}
.circle_btn.bt-002:hover::after {
	background:rgba(95,171,127,0.50);
}
.circle_btn.bt-003:hover::after {
	background:rgba(250,162,177,0.50);
}
.circle_btn.bt-004:hover::after {
	background:rgba(248,209,96,0.50);
}
.circle_btn.bt-005:hover::after {
	background:rgba(250,148,107,0.50);
}
.circle_btn.bt-006:hover::after {
	background:rgba(251,105,124,0.50);
}
.circle_btn.bt-007:hover::after {
	background:rgba(206,147,208,0.50);
}
.circle_btn.bt-008:hover::after {
	background:rgba(121,213,194,0.50);
}
.circle_btn.bt-009:hover::after {
	background:rgba(174,50,73,0.50);
}
.circle_btn.bt-010:hover::after {
	background:rgba(204,204,51,0.50);
}
.circle_btn.bt-011:hover::after {
	background:rgba(106,194,255,0.50);
}
#content .circle_btn p {
	position: absolute;/*絶対配置*/
	width: 100%;
	display: block;
	color: white;/*文字は白に*/
	bottom: 15%;
	line-height: 1.3;
	font-weight: 600;
	z-index: 2;
}
@media (max-width: 1200px) {
	.circle_btn{
		position: relative;
		display: inline-block;
		height:170px;
		width: 170px;
		border-radius: 50%;
	}
}
@media (max-width: 991px) {
	.circle_btn{
		position: relative;
		display: inline-block;
		height:130px;
		width: 130px;
		border-radius: 50%;
	}
}
@media (max-width: 480px){
	.circle_btn{
		position: relative;
		display: inline-block;
		height:130px;
		width: 130px;
		border-radius: 50%;
	}
	#content .circle_btn p {
		bottom: 8%;
		font-size: 0.8em;
	}
}
@media (max-width: 450px){
	.circle_btn{
		position: relative;
		display: inline-block;
		height:100px;
		width: 100px;
		border-radius: 50%;
	}
}
@media (max-width: 320px){
	.circle_btn{
		position: relative;
		display: inline-block;
		height:80px;
		width: 80px;
		border-radius: 50%;
	}
}













/** 14. sns button
 **************************************************************** **/
.flowbtn{
	border-radius:50%;
	position:relative;
	display:inline-block;
	width:40px;
	height:40px;
	font-size:25px;
	text-decoration:none;
	transition:.5s;
}
/* ボタンマウスホバー時のテキスト指定 */
.flowbtn:hover{
	color:#fff!important;
}
/* アイコンをど真ん中に */
.flowbtn i{
	position:absolute;
	top:50%;
	left:50%;
	-ms-transform:translate(-50%,-50%);
	-webkit-transform:translate(-50%,-50%);
	transform:translate(-50%,-50%);
}
/* Twitter */
.flowbtn.fl_tw2{
	background:#55acee; 
	color:#fff;
}
/* Twitterマウスホバー時 */
.flowbtn.fl_tw2:hover{
	border:solid 1px #55acee;
	background:#55acee;
}
/* Instagram */
.flowbtn.insta_btn2 {
	border:solid 1px #c6529a;
	color:#c6529a;
	font-size:35px;
}
/* Instagramマウスホバー時 */
.flowbtn.insta_btn2:hover{
	border:solid 1px #c6529a;
	background:#c6529a;
}
/* Facebook */
.flowbtn.fl_fb2{
	border:solid 1px #3b5998;
	color:#3b5998;
}
/* Facebookマウスホバー時 */
.flowbtn.fl_fb2:hover{
border:solid 1px #3b5998;
background:#3b5998;
}
/* Feedly */
.flowbtn8.fl_fd2{
	border:solid 1px #6cc655;
	color:#6cc655;
	font-size:28px;
}
/* Feedlyマウスホバー時 */
.flowbtn8.fl_fd2:hover{
	border:solid 1px #6cc655;
	background:#6cc655;
}
/* Pocket */
.flowbtn.fl_pk2{
	border:solid 1px #ef3f56;
	color:#ef3f56;
	font-size:32px;
}
/* Pocketマウスホバー時 */
.flowbtn.fl_pk2:hover{
	border:solid 1px #ef3f56;
	background:#ef3f56;
}
/* はてブ */
.flowbtn.fl_hb2{
	border:solid 1px #1ba5dc;
	color:#1ba5dc;
	font-size:25px;
}
/* はてブマウスホバー時 */
.flowbtn.fl_hb2:hover{
	border: solid 1px #1ba5dc;
	background: #1ba5dc;
}
/* YouTube */
.flowbtn.fl_yu2{
	border: solid 1px #fc0d1c;
	color: #fc0d1c;
	font-size: 28px;
}
/* YouTubeマウスホバー時 */
.flowbtn.fl_yu2:hover{
border:solid 1px #fc0d1c;
background:#fc0d1c;
}
/* LINE */
.flowbtn.fl_li2{
	border: solid 1px #00c300;
	color: #00c300;
	font-size: 35px;
}
/* LINEマウスホバー時 */
.flowbtn.fl_li2:hover{
	border:solid 1px #00c300;
	background:#00c300;
}
/* お問い合わせ */
.flowbtn.fl_ma2{
	border: solid 1px #f3981d;
	color: #f3981d;	
	font-size: 28px;
}
/* お問い合わせマウスホバー時 */
.flowbtn.fl_ma2:hover {
	border: solid 1px #f3981d;
	background: #f3981d;
}
/* ulタグの内側余白を０にする */
ul.snsbtniti {
	padding: 0!important;
}
/* ボタン全体の位置 */
.snsbtniti{
	display: flex;
	flex-flow: row wrap;
	    justify-content: center;
}
/* ボタン同士の余白 */
.snsbtniti li{
	flex: 0 0 80px;
	text-align: center!important;
	list-style: none;
}



/*************soical icons**********/
.social-1{
    margin: 0;
    padding: 0;
}

.snsbtniti li{
    display: inline-block;
}
.snsbtniti li a i{
    width:42px;
    height: 42px;
    line-height: 42px;
    text-align: center;
    color:#fff;
    font-size: 16px;
    -webkit-transition: all 200ms ease-in;
    -o-transition: all 200ms ease-in;
    -moz-transition: all 200ms ease-in;
    transition: all 200ms ease-in;
}

.snsbtniti li.twitter a svg {
width:42px;
	height: 42px;
	padding: 12px;
}
.snsbtniti li a i:hover{
    opacity: 0.8;
}
.snsbtniti li a i.fa-facebook{
    background-color: #3b5998;
}
.snsbtniti li a i.fa-twitter{
    background-color: #0084b4;

}
.snsbtniti li.twitter a svg{
	background-color: #000000;
	position: relative;
	top:-2px;
}
.snsbtniti li a i.fa-instagram{
    background-color: #ea4c89;
}



/** 15. 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;
	}
}






/** 16. owlカルーセル ドットデザイン
 **************************************************************** **/
.owl-theme .owl-nav.disabled + .owl-dots {
	margin-top: 2px;
}
.owl-theme .owl-dots {
	text-align: center;
	-webkit-tap-highlight-color: transparent;
}
.owl-theme .owl-dots .owl-dot {
	display: inline-block;
	zoom: 1;
}
.owl-theme .owl-dots .owl-dot span {
	width: 10px;
	height: 10px;
	margin: 5px 7px;
	background: rgba(174,50,73,0.40);
	display: block;
	-webkit-backface-visibility: visible;
	transition: opacity 200ms ease;
	border-radius: 30px;
}
.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
	background: rgba(174,50,73,1.00);
}





#overheader .flexnav li a {

	-webkit-tap-highlight-color: transparent;
	transition: 0s ease-out;
}

#overheader .flexnav.flexnav-show {
	max-height: 2000px;
	opacity: 1;
	display: block;
	-webkit-transition: all 0s ease-in-out;
	-moz-transition: all 0s ease-in-out;
	-ms-transition: all 0s ease-in-out;
	transition: all 0s ease-in-out;
}

a {
	-webkit-transition-timing-function: ease;
	-o-transition-timing-function: ease;
	transition-timing-function: ease;
	-webkit-transition-duration: 0s;
	-o-transition-duration: 0s;
	transition-duration: 0s;
	-webkit-transition-property: all;
	-o-transition-property: all;
	transition-property: all;
}





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


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


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


/*タブの角丸の変更*/
@media (min-width: 769px) {
	.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 > li > a.active, .nav-tabs.nav-justified > li > a.active,
	.nav-tabs-justified > li > a.active:hover,
	.nav-tabs.nav-justified > li > a.active:hover,
	.nav-tabs-justified > li > a.active:focus,
	.nav-tabs.nav-justified > li > a.active:focus {
		border-bottom-color: #f9f9f9;
	}
}


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


/*タブの下方向のスペース*/
#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: #AE3249;
	text-decoration: none;
}


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


.tab-content {
	padding: 30px 20px;
	background-color: #E4E4E4;
}


/*タブ内のラベルレイアウト*/
.nav-tabs .label {
    display: inline-block;
		line-height: 1.5;
}

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


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

#nav_steps {
	display: flex;
}

#nav_steps li {
	position: relative;
	flex: 1;
}

#nav_steps li .inner {
	display: table;
	width: 100%;
	height: 100%;
	
}

#nav_steps li .inner .title {
	display: table-cell;
	vertical-align: middle;
}


@media (max-width: 768px) {
.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: 15px;
	font-weight: 600;
	letter-spacing: 2px;
}


.nav-tabs > li > a.active .kan412,
.nav-tabs > li > a.active .kan412:hover,
.nav-tabs > li > a.active .kan412:focus {
	color: #fff;
	font-family: kan412typos-std, sans-serif;
	font-size: 15px;
	letter-spacing: 2px;
}
#nav_steps.nav > li > a {

		border-radius: 0px;
		padding: 10px;
}
}

@media (max-width: 480px) {
.nav-tabs > li > a {
	line-height: 1.1;
}

.nav-tabs > li > a .kan412,
.nav-tabs > li > a .kan412:hover,
.nav-tabs > li > a .kan412:focus {
	font-size: 14px;
	letter-spacing: 0px;
}

.nav-tabs > li > a.active .kan412,
.nav-tabs > li > a.active .kan412:hover,
.nav-tabs > li > a.active .kan412:focus {
	font-size: 13px;
	letter-spacing: 0px;
}

/*タブ内のラベルレイアウト*/
.nav-tabs > li > a.active .label-default.label-outline {
	font-size:12px;
}
.nav-tabs > li > a .label-default.label-outline {
	font-size:12px;
}

}

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

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

/*タブ内のラベルレイアウト*/
.nav-tabs > li > a.active .label-default.label-outline {
	font-size:11px;
}
.nav-tabs > li > a .label-default.label-outline {
	font-size:11px;
}

}

/** 18. thumbnail関連
 **************************************************************** **/
#pickup .thumbnail {
	background-color: #34AEC1;
}

.sc .thumbnail {
	background-color: #FFDA4B;
}


.thumbnail {
	display: block;
	padding: 5px 5px;
	margin-bottom: 19px;
	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;
}


.thumbnail > img,
.thumbnail a > img {
	display: block;
	max-width: 100%;
	height: auto;
	margin-right: auto;
	margin-left: auto;
}


.thumbnail a {
	color: #333;
	z-index: 99;
}


.thumbnail .caption {
	padding: 0px;
	text-align: center;
}

	.caption h4 {
		font-size: 16.5px;
	}
	
	#pickup h4 {
		font-size: 16.5px;
	}

@media (max-width: 768px) {
	.caption h4 {
		font-size: 13.5px;
	}
	
	
	#pickup h4 {
		font-size: 13.5px;
	}
}


.thumbnail .caption {
	color: #333;
}


#pickup a.thumbnail {
	color: #fff;
}


a.thumbnail {
	color: #333;
}


#pickup a.thumbnail h4 {
	color: inherit;
}





a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
	border-color: #ff90a1cc;
	background-color: #ffc8d0cc;
}

.sc a.thumbnail:hover,
.sc a.thumbnail:focus,
.sc a.thumbnail.active {
	top: -4px;
	color: #34AEC1;
	text-shadow: 0 0px 0px rgba(0, 0, 0, .4);
	background: #FFEEB1;
	box-shadow: 0.5px 3px 0.5px 0.5px #FFDA4B;
	-webkit-transition: all .3s;
	transition: all .3s;
	border-color: #FFDA4B;
	background-color: #FFEEB1;
}

.thumbnail .icon {
	width: 60px;
	height: 60px;
}


.btn.shadow_01 {
	-moz-box-shadow:  0px 1px 5px rgba(0,0,0,.3);
	-webkit-box-shadow:  0px 1px 5px rgba(0,0,0,.3);
	box-shadow:  0px 1px 5px rgba(0,0,0,.3);
	-webkit-tap-highlight-color: transparent;
	transition: .3s ease-out;
}


.btn.shadow_01:hover,
.btn.shadow_01:focus,
.btn.focus.shadow_01 {
	-webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 7.82213px 24.4918px -4.87295px;
	-moz-box-shadow: rgba(0, 0, 0, 0.3) 0px 7.82213px 24.4918px -4.87295px;
	box-shadow: rgba(0, 0, 0, 0.3) 0px 7.82213px 24.4918px -4.87295px;
}


.triangle {
	position: relative;
	padding-right: 20px;
}


.triangle::before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 5px;
	width: 0;
	height: 0;
	margin-top: -8px;
	border-top: 8px solid transparent;
	border-right: 0px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 11px solid ;
}

/* -------------------------------------------------- *
 * what's new関連
 * -------------------------------------------------- */

#whatsnew {
	overflow: hidden;
	position: relative;
	margin-top: 0px;
	margin-bottom: 10px;
}


#whatsnew a.btn {
	margin-top: -20px;
}


.module-title h4.whatsnew_jp ,
.module-title .h4.whatsnew_jp {
	letter-spacing: 1px;
	font-size: 18px;
	color: #333;
	margin-top: 20px;
	margin-bottom: 5px;
}


.module-title h3,
.module-title .h3 {
	letter-spacing: 0.5px;
	font-size: 25px;
	font-weight: 600;
	color: #AE3249;
	border-bottom: 3px dashed #AE3249;
	display: inline-block;
	padding-bottom: 5px;
	margin-bottom: 1em;
}


.module-title #whatsnew {
	font-weight: 900;
}


@media all and (max-width: 768px) {
	.module-title h3,
	.module-title .h3 {
		letter-spacing: 1px;
		font-size: 17px;
	}
}



/** 19. 丸吹き出し
 **************************************************************** **/
.balloon3-right-btm {
	position: relative;
	display: inline-block;
	padding: 0 3px;
	width: 3.5em;
	height: 3.5em;
	line-height: 3.5em;
	text-align: center;
	color: #FFF;
	font-size: 0.8em;
	font-weight: bold;
	background: rgba(255,255,255,0.80);
	border-radius: 50%;
	box-sizing: border-box;
}


