@charset "utf-8";

/* ========================================================================================

Name: design.css

Description: Base Design And Common Settings

Update: 2020.03.13

======================================================================================== */

/* fonts
-------------------------------------------------- */

/* 全体共通
-------------------------------------------------- */
html {
  visibility: hidden;
}
html.wf-active {
  visibility: visible;
}

html {
	height:100%;
}

body {
	/* 日本語用 */
	/*
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "メイリオ", sans-serif;
	*/
	/* 英文用 */
	font-family: 'Roboto',arial,sans-serif;
	
	-webkit-text-size-adjust:100%;
	font-size:16px;
	font-weight:400;
	line-height:1.67em;
	color: #000000;
	text-align:center;
	height:100%;
	position:relative;
	height:100%;
	background-color:#ffffff;
}
a {
	color: #000000;
	overflow: hidden;
	outline: none;
	text-decoration:none;
	transition:all ease-out 0.3s;
	transition: 0.50s cubic-bezier(0.19, 1, 0.22, 1);
}

a:hover {
	color:#a42020;
	text-decoration: none;
	transition:all ease-out 0.3s;
	transition: 0.50s cubic-bezier(0.19, 1, 0.22, 1);
}

a:hover img {
	opacity:0.8;
	transition: 0.50s cubic-bezier(0.19, 1, 0.22, 1);
}

*:hover {
	transition: 0.50s cubic-bezier(0.19, 1, 0.22, 1);
}

.link_txt a {
	color: #cc0000;
	overflow: hidden;
	outline: none;
	text-decoration:underline;
}

.link_txt a:hover {
	color: #cc0000;
	text-decoration:none;
}

.clearfix:after {
	content: "."; display: block; clear: both; height: 0; line-height: 0; font-size: 0; visibility: hidden;
}

.clearfix {
	_height: 1px; min-height: 1px;
	*zoom: 1;
}

* html .clearfix {
	height: 1%;
	display: inline-block;
}

.rollover:hover{
	opacity:0.7;
	filter: alpha(opacity=70);
}

/* IE8以下でレイアウトが大崩れしないように */
header,
footer,
main,
article,
section,
aside {
	display:block;
}

i.fas {
	margin-right:5px;
}

i.fa-external-link-alt {
	margin-left:5px;
	font-size:85%;
	color:#ba1b2d;
}


.font-roboto {
	font-family: 'Roboto', sans-serif;
}

.font-Noto-Serif {
	font-family: 'Noto Serif JP', serif;
}

.font-yumin {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

i.far {
	margin:0 5px;
}

#parallax-sake {
	position:fixed;
	left:0;
	right:0;
	top:0;
	bottom:0;
	z-index:-1;
	background:url(../img/common/pct_sake.jpg) no-repeat center center;
	background-size:cover;
}

@media screen and (min-width: 768px){
	
	a[href*="tel:"] {
		display:inline-block;
		line-height:1.33em;
		pointer-events: none;
		margin-bottom:-3px;
		text-decoration:none;
		color:#000 !important;
	}
	
}

@media screen and (max-width: 767px){
	
	html {
		height:100%;
	}
	
	body {
		-webkit-text-size-adjust:100%;
		font-size:14px;
		line-height:1.5em;
		height:100%;
		position:relative;
	}
	
}


/* ページ表示のフェード効果
-------------------------------------------------- */

.ready .earthExpand {
	opacity: 0;
}

.earthExpand.anime-start {
	animation-name:anime-earthExpand;
	animation-duration:0.5s;
	animation-delay: 2.0s;
	animation-fill-mode:forwards;
	animation-timing-function: cubic-bezier(.24,.92,.8,1.13);
	opacity: 0;
}

@media screen and (max-width: 767px){
	
	.earthExpand.anime-start {
		animation-delay: 0s;
	}
	
}

@keyframes anime-earthExpand {
	from {
		opacity: 0;
		transform:scale(0.6,0.6);
	}
	to {
		opacity: 1;
		transform:scale(1,1);
	}
}


.ready .slideInUp {
	opacity: 0;
}

.slideInUp.anime-start {
	animation-name:anime-slideInUp;
	animation-duration:0.8s;
	animation-delay: 0.5s;
	animation-fill-mode:forwards;
	animation-timing-function: cubic-bezier(.17,.67,.53,.98);
	animation-timing-function: cubic-bezier(.28,.68,.5,.94);
	opacity: 0;
}

@keyframes anime-slideInUp {
	from {
		opacity: 0;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.ready .slideInLeft {
	opacity: 0;
}

.slideInLeft.anime-start {
	animation-name:anime-slideInLeft;
	animation-duration:0.8s;
	animation-delay: 0.5s;
	animation-fill-mode:forwards;
	animation-timing-function: cubic-bezier(.28,.68,.5,.94);
	opacity: 0;
}

@keyframes anime-slideInLeft {
	from {
		opacity: 0;
		transform: translateX(-20px);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

.ready .slideInRight {
	opacity: 0;
}

.slideInRight.anime-start {
	animation-name:anime-slideInRight;
	animation-duration:0.8s;
	animation-delay: 0.5s;
	animation-fill-mode:forwards;
	animation-timing-function: cubic-bezier(.28,.68,.5,.94);
	opacity: 0;
}

@keyframes anime-slideInRight {
	from {
		opacity: 0;
		transform: translateX(20px);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

.ready .fade {
	opacity: 0;
}

.fade.anime-start {
	animation-name:anime-fade;
	animation-duration:0.8s;
	animation-fill-mode:forwards;
	animation-timing-function: cubic-bezier(.28,.68,.5,.94);
	opacity: 0;
}

@keyframes anime-fade {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}


.ready .expand {
	opacity: 0;
}

.expand.anime-start {
	animation-name:anime-expand;
	animation-duration:0.8s;
	animation-fill-mode:forwards;
	animation-timing-function: cubic-bezier(.28,.68,.5,.94);
	opacity: 0;
}

@keyframes anime-expand {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}


.delay02.anime-start {
	animation-delay: 0.8s;
}
.delay03.anime-start {
	animation-delay: 1.2s;
}
.delay04.anime-start {
	animation-delay: 1.6s;
}



@media screen and (min-width: 768px) and (max-width: 1000px){

	.lst-feature .lst-feature-outline:nth-child(odd) {
		animation-delay: 0.4s;
	}

	.lst-feature .lst-feature-outline:nth-child(even) {
		animation-delay: 0.8s;
	}
	
}

@media screen and (max-width: 767px){
	
	.delay02.anime-start {
		animation-delay: 0.4s;
	}
	.delay03.anime-start {
		animation-delay: 0.4s;
	}
	.delay04.anime-start {
		animation-delay: 0.4s;
	}
		
}


/* HEADER
-------------------------------------------------- */

header {
	width:auto;
	position:absolute;
	z-index:100;
	left:0;
	right:0;
	top:0;
}

header > .inner {
	max-width:1120px;
	height:120px;
	margin:auto;
	text-align:left;
	padding:36px 20px 20px;
	display:flex;
}

#header-logo {
	width:140px;
}

#header-logo a {
	display:block;
}

.nav-global {
	flex-grow: 1;
	font-weight:500;
	padding-top:15px;
}

.nav-global > ul {
	flex-grow: 2;
	display:flex;
	justify-content: flex-end;
}

.nav-global > ul li {
	padding:0 10px;
}

.nav-global > ul a {
	display:block;
	padding:7px 10px;
	position:relative;
}

.nav-global > ul a:after {
	position:absolute;
	content:"";
	bottom:0;
	left:0;
	width:0;
	height:2px;
	background-color:#a42020;
	transition: 0.35s cubic-bezier(0.19, 1, 0.22, 1);
}

.nav-global > ul a:hover:after {
	width:100%;
}

.nav-global > ul a i {
	display:none;
}

.nav-global > ul li.button a {
	display:block;
	color:#ffffff;
	background-color:#a42020;
	border-radius:4px;
	padding:7px 25px;
	transition: 0.7s cubic-bezier(0.19, 1, 0.22, 1);
}

.nav-global > ul li.button a:after {
	display:none;
}

.button a:hover {
	transition: 0.7s cubic-bezier(0.19, 1, 0.22, 1);
	background-color:#000000 !important;
	opacity:0.8;
}

.nav-global > ul a i.fa-envelope {
	display:inline-block;
}

#btn-hamburger {
	display:none;
}


@media screen and (min-width: 768px) and (max-width: 1000px){
	
	.nav-global {
		flex-grow: 1;
		font-weight:500;
		padding-top:15px;
	}
	
	.nav-global > ul {
		flex-grow: 2;
		display:flex;
		justify-content: flex-end;
	}
	
	.nav-global > ul li {
		padding:0 5px;
	}
	
	.nav-global > ul a {
		display:block;
		padding:7px 5px;
		position:relative;
		font-size:14px;
		line-height:1.33em;
	}
	
	.nav-global > ul a:after {
		position:absolute;
		content:"";
		bottom:0;
		left:0;
		width:0;
		height:2px;
		background-color:#a42020;
		transition: 0.35s cubic-bezier(0.19, 1, 0.22, 1);
	}
	
	.nav-global > ul a:hover:after {
		width:100%;
	}
	
}

@media screen and (max-width: 767px){
	
	header {
		width:auto;
		position:absolute;
		z-index:100;
		left:0;
		right:0;
		top:0;
		z-index:200;
	}
	
	header > .inner {
		max-width:1120px;
		height:auto;
		margin:auto;
		text-align:left;
		padding:20px 20px 20px;
		display:block;
	}
	
	#header-logo {
		width:94px;
	}
	
	#header-logo a {
		display:block;
	}
	
	.menu-open header {
		height:100%;
		background-color:#1d1b18;
	}
	
	.menu-open header > .inner {
		height:100%;
	}
	
	.menu-open #header-logo {
		opacity:0;
	}
	
	.menu-open .nav-global {
		display:block;
		position:fixed;
		box-sizing:border-box;
		left:0;
		right:0;
		top:0;
		height:100%;
		padding:100px 20px 20px;
	}
	
	.nav-global {
		flex-grow: 1;
		font-weight:500;
		padding-top:15px;
		display:none;
	}
	
	.nav-global > ul {
		flex-grow: 2;
		display:block;
		justify-content: flex-end;
	}
	
	.nav-global > ul li {
		padding:3px 10px;
	}
	
	.nav-global > ul a {
		display:block;
		padding:7px 10px;
		color:#ffffff;
		font-size:21px;
		text-align:center;
	}
	
	.nav-global > ul a i {
		display:none;
	}

	.nav-global > ul li.button {
		padding:20px 10px 3px;
	}
	
	.nav-global > ul li.button a {
		display:block;
		color:#ffffff;
		background-color:#a42020;
		border-radius:4px;
		padding:12px 25px;
		font-size:18px;
		max-width:140px;
		margin:auto;
	}
	
	.nav-global > ul a i.fa-envelope {
		display:inline-block;
	}
	
	#btn-hamburger {
		display:block;
		position:absolute;
		top:25px;
		right:25px;
		width:35px;
		height:25px;
	}
	
	#btn-hamburger span {
		display:block;
		position:absolute;
		left:0;
		width:35px;
		height:3px;
		background-color:rgba(153,0,0,1);
		transition: 0.25s ease;
	}
	
	#btn-hamburger span:nth-child(1) {
		top:0;
	}
	
	#btn-hamburger span:nth-child(2) {
		top:11px;
	}
	
	#btn-hamburger span:nth-child(3) {
		bottom:0;
	}
	
	.menu-open #btn-hamburger span:nth-child(1) {
		top:11px;
		transform:rotate(45deg);
	}
	
	.menu-open #btn-hamburger span:nth-child(2) {
		opacity:0;
	}
	
	.menu-open #btn-hamburger span:nth-child(3) {
		bottom:11px;
		transform:rotate(-45deg);
	}

		
		
}


/* FOOTER AREA
-------------------------------------------------- */

footer {
	background-color:#ffffff;
}

footer > .inner {
	max-width:1120px;
	margin:auto;
	padding:50px 0 40px;
	display:flex;
}

footer > .inner > div {
	flex-shrink: 0;
	width:50%;
}

footer .logo-area ul {
	display:flex;
	align-items:center;
	align-items:flex-start;
	margin:0 -20px;
}

footer .logo-area li {
	margin:0 20px;
}

footer .logo-area li a {
	display:block;
}

footer .logo-area li.logo-group {
	width:208px;
	margin-top:-5px;
}

footer .logo-area li.logo-mk {
	width:100px;
}

footer .logo-area li.logo-fb {
	margin-top:8px;
}

footer .logo-area li.logo-fb a {
	color:#2f51a3;
	font-size:16px;
	font-weight:500;
	line-height:2em;
}

footer .logo-area li.logo-fb i {
	font-size:26px;
	margin-right:5px;
}

footer .ft-navi {
	font-size:14px;
}

footer .ft-navi ul {
	text-align:right;
	margin:0 -10px;
}

footer .ft-navi li {
	display:inline-block;
}

footer .ft-navi li a {
	display:block;
	position:relative;
	padding:0 10px;
	overflow:visible;
}

footer .ft-navi li + li a:before {
	content:"|";
	position:absolute;
	left:-4px;
}

footer .copyright {
	font-size:12px;
	text-align:right;
}


@media screen and (min-width: 768px) and (max-width: 1000px){
	
	footer > .inner {
		padding:50px 20px 40px;
	}
	
	footer .logo-area ul {
		display:flex;
		align-items:center;
		align-items:flex-start;
		margin:0 -10px;
	}
	
	footer .logo-area li {
		margin:0 10px;
	}
	
	footer .logo-area li.logo-group {
		width:150px;
		margin-top:-5px;
	}
	
	footer .logo-area li.logo-mk {
		width:80px;
	}
	
	footer .logo-area li.logo-fb {
		margin-top:8px;
	}
	
	footer .logo-area li.logo-fb a {
		color:#2f51a3;
		font-size:14px;
		font-weight:500;
		line-height:2em;
	}
	
	footer .logo-area li.logo-fb i {
		font-size:26px;
		margin-right:5px;
	}
		
}

@media screen and (max-width: 767px){
	
	footer {
		background-color:#ffffff;
	}
	
	footer > .inner {
		max-width:1120px;
		margin:auto;
		padding:20px 15px 65px;
		display:block;
	}
	
	footer > .inner > div {
		flex-shrink: 0;
		width:100%;
	}
	
	footer .logo-area ul {
		display:flex;
		justify-content: center;
		align-items:center;
		align-items:flex-start;
		margin:0 -7px;
	}
	
	footer .logo-area li {
		margin:0 7px;
	}
	
	footer .logo-area li a {
		display:block;
	}
	
	footer .logo-area li.logo-group {
		width:122px;
		margin-top:0;
	}
	
	footer .logo-area li.logo-mk {
		width:60px;
	}
	
	footer .logo-area li.logo-fb {
		margin-top:4px;
	}
	
	footer .logo-area li.logo-fb a {
		color:#2f51a3;
		font-size:12px;
		font-weight:500;
		line-height:2em;
	}
	
	footer .logo-area li.logo-fb i {
		font-size:22px;
		margin-right:2px;
	}
	
	footer .ft-navi {
		font-size:11px;
	}
	
	footer .ft-navi ul {
		text-align:center;
		margin:10px -10px 0;
	}
	
	footer .ft-navi li {
		display:inline-block;
	}
	
	footer .ft-navi li a {
		display:block;
		position:relative;
		padding:0 5px;
		overflow:visible;
	}
	
	footer .ft-navi li + li a:before {
		content:"|";
		position:absolute;
		left:-4px;
	}
	
	footer .copyright {
		font-size:10px;
		text-align:center;
	}
	
}



/* FLOOTING BUTTON
-------------------------------------------------- */

#flooting-button {
	position:fixed;
	top:40%;
	right:0;
	z-index:100;
}

#flooting-button a {
	display:block;
	font-size:18px;
	color:#ffffff;
	background-color:#a42020;
	writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	padding:50px 20px 50px;
	border-radius:6px 0 0 0;
	height:120px;
}

#flooting-button a.return {
	padding:18px 20px 15px;
	border-radius:0 0 0 6px;
	height:30px;
	border-top:1px #ffffff solid;
}

#flooting-button a:hover {
	opacity:0.8;
}

#flooting-button a i.fas {
	padding-bottom:7px;
	height:20px;
}


@media screen and (min-width: 768px) and (max-width: 1000px){
	
	#flooting-button {
		position:fixed;
		top:40%;
		right:15px;
		z-index:100;
	}
	
}


@media screen and (max-width: 767px){
	
	#flooting-button {
		position:fixed;
		top:auto;
		left:0;
		right:0;
		bottom:0;
		z-index:100;
		display:flex;
	}
	
	#flooting-button a {
		display:block;
		box-sizing:border-box;
		font-size:16px;
		line-height:1.2em;
		color:#ffffff;
		background-color:#a42020;
		writing-mode:horizontal-tb;
		padding:20px 20px 20px;
		border-radius:4px 0 0 0;
		width:80%;
		height:60px;
	}
	
	#flooting-button a.return {
		padding:20px 20px 15px;
		text-align:center;
		border-radius:0 6px 0 0;
		height:60px;
		border-top:none;
		border-left:1px #ffffff solid;
		flex-shrink:0;
		width:20%;
	}
	
	#flooting-button a:hover {
		opacity:1;
	}
	
	#flooting-button a i.fas {
		padding-bottom:0;
		padding-right:10px;
		height:auto;
	}
	
	#flooting-button a.return i.fas {
		padding-right:0;
	}
	
}


/* BASE LAYOUT and COMMON PARTS
-------------------------------------------------- */

body > .inner {
	overflow:hidden;
	position:relative;
	background:url(../img/common/bg_base.jpg) repeat;
}

main {
	position:relative;
}

.sec-basic {
	margin:0;
	padding:80px 0 95px;
	background:url(../img/common/bg_base.jpg) repeat;
}

.sec-basic > .inner {
	max-width:1120px;
	margin:auto;
	padding:0 20px;
	text-align:left;
}

.sec-basic h2 {
	text-align:center;
	font-size:46px;
	font-weight:500;
	line-height:1.5em;
}

.sec-basic h2 > span {
	display:block;
}

.sec-basic .txt-lead01 {
	text-align:center;
	margin-top:20px;
}


@media screen and (min-width: 768px) and (max-width: 1000px){
	
	body > .inner {
		overflow:hidden;
		position:relative;
	}
	
	main {
		position:relative;
	}
	
	.sec-basic {
		margin:0;
		padding:80px 0 95px;
		background:url(../img/common/bg_base.jpg) repeat;
	}
	
	.sec-basic > .inner {
		max-width:1120px;
		margin:auto;
		padding:0 20px;
		text-align:left;
	}
	
	.sec-basic h2 {
		text-align:center;
		font-size:36px;
		font-weight:500;
		line-height:1.5em;
	}
	
	.sec-basic .txt-lead01 {
		text-align:center;
		margin-top:20px;
	}
	
}


@media screen and (max-width: 767px){
	
	.sec-basic {
		margin:0;
		padding:40px 20px 30px;
		background:url(../img/common/bg_base.jpg) repeat;
	}
	
	.sec-basic > .inner {
		max-width:1120px;
		margin:auto;
		padding:0;
		text-align:left;
	}
	
	.sec-basic h2 {
		text-align:center;
		font-size:23px;
		font-weight:500;
		line-height:1.33em;
	}
	
	.sec-basic .txt-lead01 {
		text-align:left;
		margin-top:20px;
	}
	
}


/* MV
-------------------------------------------------- */

#page-heading {
	background:url(../img/common/bg_japan.png) no-repeat calc(50% - 400px) top;
	padding:140px 0 60px;
}

@media all and (-ms-high-contrast: none) {
	#page-heading {
		background:url(../img/common/bg_japan.png) no-repeat left -400px top;
	}
}

#page-heading > .inner {
	max-width:1120px;
	margin:auto;
	padding:0 20px;
	text-align:left;
	position:relative;
}

#page-heading > .inner figure {
	position:absolute;
	width:50%;
	right:0;
	top:20px;
}

#page-heading > .inner .txt-area {
	width:55%;
	padding:60px 0 0;
}

#page-heading .txt-area h2 {
	font-size:50px;
	font-weight:500;
	line-height:1.25em;
}

#page-heading .txt-area h2 > span {
	display:block;
	position:relative;
}


.bgextend{
	animation-name:bgextendAnimeBase;
	animation-duration:1s;
	animation-fill-mode:forwards;
	position: relative;
	overflow: hidden;/*　はみ出た色要素を隠す　*/
	opacity:0;
}

@keyframes bgextendAnimeBase{
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

/*中の要素*/
.bgappear{
	animation-name:bgextendAnimeSecond;
	animation-duration:1s;
	animation-delay: 0.3s;
	animation-fill-mode:forwards;
	opacity: 0;
}

@keyframes bgextendAnimeSecond{
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

/*左から右*/
.bgLRextend::before{
	animation-name:bgLRextendAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
    content: "";
    position: absolute;
    width: 100%;
    height: 120%;
    background-color: #a42020;/*伸びる背景色の設定*/
	opacity:1;
}

#page-heading .bgLRextend::before{
    height: 100%;
}

@media screen and (max-width: 767px){
	#page-heading .bgLRextend::before{
		display:block;
	}
	.bgLRextend::before{
		display:none;
	}
}

@keyframes bgLRextendAnime{
	0% {
		transform-origin:left;
		transform:scaleX(0);
	}
	50% {
		transform-origin:left;
		transform:scaleX(1);
	}
	50.001% {
		transform-origin:right;
	}
	100% {
		transform-origin:right;
		transform:scaleX(0);
	}
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.bgappearTrigger,
.bgLRextendTrigger{
    opacity: 0;
}


#page-heading .txt-area h2 strong {
	color:#a42020;
	font-weight:500;
}

#page-heading .txt-area p {
	margin-top:30px;
	padding-right:80px;
}

.japan-brand {
	display:flex;
}

.japan-brand dt {
	flex-shrink:0;
	width:115px;
}

.japan-brand dd {
	padding:8px 0 0 20px;
	font-size:14px;
	font-weight:500;
	line-height:1.5em;
}

#page-heading .japan-brand {
	margin-top:40px;
}


@media screen and (min-width: 768px) and (max-width: 1000px){
	
	#page-heading {
		padding:100px 0 20px;
	}
		
	#page-heading .txt-area h2 {
		font-size:30px;
		font-weight:500;
		line-height:1.25em;
	}
	
}


@media screen and (max-width: 767px){
	
	#page-heading {
		background:url(../img/common/bg_base.jpg) repeat;
		padding:90px 0 10px;
	}
	
	#page-heading > .inner {
		max-width:1120px;
		margin:auto;
		padding:0 20px;
		text-align:left;
		position:relative;
	}
	
	#page-heading > .inner figure {
		position:relative;
		width:auto;
		max-width:90%;
		margin:auto;
		right:inherit;
		top:inherit;
	}
	
	#page-heading > .inner .txt-area {
		width:auto;
		padding:20px 0 0;
	}
	
	#page-heading .txt-area h2 {
		font-size:23px;
		font-weight:500;
		line-height:1.25em;
	}
	
	#page-heading .txt-area h2 strong {
		color:#a42020;
		font-weight:500;
	}
	
	#page-heading .txt-area p {
		margin-top:20px;
		padding-right:0;
	}
	
	.japan-brand {
		display:flex;
	}
	
	.japan-brand dt {
		flex-shrink:0;
		width:80px;
	}
	
	.japan-brand dd {
		padding:3px 0 0 10px;
		font-size:12px;
		font-weight:500;
		line-height:1.5em;
	}
	
	#page-heading .japan-brand {
		margin-top:20px;
	}
	
}



/* トピックス
-------------------------------------------------- */

#sec-topics {
	padding: 38px 0 45px;
	background:url(../img/common/bg_medium.jpg) repeat;
}

@media screen and (max-width: 767px){
	#sec-topics {
		padding: 19px 0 22px;
	}
}

.lst-topic {
	display: flex;
	flex-wrap: wrap;
	margin: -10px -17px 0;;
}

@media screen and (max-width: 767px){
	.lst-topic {
		margin: 5px 0 0;;
	}
}

.lst-topic.col1 {
	justify-content: center;
}

.lst-topic.col2 {
	justify-content: space-between;
}

.lst-topic .lst-topic-col {
	margin-top:  30px;
	padding: 0 17px;
}

@media screen and (max-width: 767px){
	.lst-topic .lst-topic-col {
		margin-top:  15px;
	}
}

.lst-topic.col1 .lst-topic-col {
	max-width: 600px;
	width: 100%;
}

.lst-topic.col2 .lst-topic-col {
	max-width: 550px;
	width: 100%;
}

.lst-topic.col2::after {
	max-width: 550px;
	width: 100%;
	display: block;
	content:"";
}

.lst-topic .lst-topic-col .topic-banner {
	width: 100%;
	height: auto;
}

.lst-topic .lst-topic-col .topic-title {
	text-align: center;
	margin-top: 12px;
}




/* 商品紹介
-------------------------------------------------- */

.lst-products-lineup {
	display:flex;
	flex-wrap: wrap;
	margin:10px -20px 0;
}

.lst-products-lineup > li {
	box-sizing:border-box;
	width:50%;
	margin-top:50px;
	padding:0 20px;
	display:flex;
}

.lst-products-lineup > li .photo {
	width:auto;
}

.lst-products-lineup .photo img {
	width:170px;
}

.lst-products-lineup dl {
	box-sizing:border-box;
	width:auto;
	padding-left:10px;
}

.lst-products-lineup dt {
	font-size:27px;
	font-weight:500;
	line-height:1.5em;
}

.lst-products-lineup dd {
	margin-top:12px;
}


@media screen and (min-width: 768px) and (max-width: 1000px){
	
	.lst-products-lineup .photo img {
		width:140px;
	}
	
	.lst-products-lineup dt {
		font-size:24px;
		font-weight:500;
		line-height:1.25em;
	}
	
}


@media screen and (max-width: 767px){
	
	.lst-products-lineup {
		display:flex;
		flex-direction: column;
		flex-wrap: wrap;
		margin:10px 0 0 -10px;
	}
	
	.lst-products-lineup > li {
		box-sizing:border-box;
		width:100%;
		margin-top:20px;
		padding:0 0px;
		display:flex;
		/*flex-direction: column;*/
	}
	
	.lst-products-lineup > li .photo {
		width:auto;
	}
	
	.lst-products-lineup .photo img {
		width:100px;
	}
	
	.lst-products-lineup dl {
		box-sizing:border-box;
		width:auto;
		padding-left:10px;
	}
	
	.lst-products-lineup dt {
		font-size:18px;
		font-weight:500;
		line-height:1.5em;
	}
	
	.lst-products-lineup dd {
		margin-top:3px;
	}
	
}



/* 商品例
-------------------------------------------------- */

#sec-sample {
	background:url(../img/common/bg_dark.jpg) repeat;
	color:#ffffff;
}

.lst-sample {
	display:flex;
	flex-wrap: wrap;
	margin:50px -7px 0;
}

.lst-sample li {
	box-sizing:border-box;
	width:16.6667%;
	padding:0 7px;
	margin-top:14px;
	position:relative;
}

.lst-sample li a {
	display:block;
}

.lst-sample li div {
	position:absolute;
	box-sizing:border-box;
	padding:5px;
	left:7px;
	right:7px;
	top:0;
	bottom:0;
	background-color:#000000;
	color:#ffffff;
	opacity:0.8;
	display:flex;
	justify-content: center;
	text-align:center;
	align-items: center;
	opacity:0;
}

.lst-sample li div:hover {
	opacity:0.8;
	cursor:pointer;
}

.lst-sample li div span {
	width:100%;
	pointer-events: none;
}


@media screen and (min-width: 768px) and (max-width: 1000px){
	
	.lst-sample li div:hover {
		opacity:0;
		cursor:pointer;
	}
	
}


@media screen and (max-width: 767px){
	
	#sec-sample {
		background:url(../img/common/bg_dark.jpg) repeat;
		color:#ffffff;
	}
	
	.lst-sample {
		display:flex;
		flex-wrap: wrap;
		margin:20px -5px 0;
	}
	
	.lst-sample li {
		box-sizing:border-box;
		width:33.33%;
		padding:0 5px;
		margin-top:10px;
		position:relative;
	}
	
	.lst-sample li a {
		display:block;
	}
	
	.lst-sample li div {
		position:absolute;
		left:7px;
		right:7px;
		top:0;
		bottom:0;
		background-color:#000000;
		color:#ffffff;
		opacity:0.8;
		display:flex;
		justify-content: center;
		text-align:center;
		align-items: center;
		/*pointer-events: none;*/
		opacity:0;
	}
	
	.lst-sample li div:hover {
		opacity:0;
		cursor:pointer;
	}
	
	.lst-sample li div span {
		width:100%;
		pointer-events: none;
	}
	
}



/* サービスの特長
-------------------------------------------------- */

#sec-feature {
	background:url(../img/common/bg_medium.jpg) repeat;
}

.lst-feature {
	display:flex;
	flex-wrap: wrap;
	margin:30px -17px 0;
}

.lst-feature .lst-feature-outline {
	width:33.33%;
	box-sizing:border-box;
	padding:0 17px;
	margin-top:34px;
}

.lst-feature .lst-feature-outline > .inner {
	box-sizing:border-box;
	height:100%;
	background-color:#ffffff;
	padding:20px 35px 35px;
}

.lst-feature .lst-feature-outline .photo {
	margin:0 -35px;
}

.lst-feature .lst-feature-outline h3 {
	text-align:center;
	font-size:22px;
	font-weight:500;
	line-height:1.5em;
	margin-top:20px;
}

.lst-feature .lst-feature-outline p {
	margin-top:15px;
}


@media screen and (min-width: 768px) and (max-width: 1000px){
	
	#sec-feature {
		background:url(../img/common/bg_medium.jpg) repeat;
	}
	
	.lst-feature {
		display:flex;
		flex-wrap: wrap;
		margin:30px -10px 0;
	}
	
	.lst-feature .lst-feature-outline {
		width:50%;
		box-sizing:border-box;
		padding:0 10px;
		margin-top:20px;
	}
	
	.lst-feature .lst-feature-outline > .inner {
		box-sizing:border-box;
		height:100%;
		background-color:#ffffff;
		padding:20px 35px 35px;
	}
	
	.lst-feature .lst-feature-outline h3 {
		text-align:center;
		font-size:22px;
		font-weight:500;
		line-height:1.5em;
		margin-top:20px;
	}
	
	.lst-feature .lst-feature-outline p {
		margin-top:15px;
	}
	
}

@media screen and (max-width: 767px){
	
	#sec-feature {
		background:url(../img/common/bg_medium.jpg) repeat;
	}
	
	.lst-feature {
		display:flex;
		flex-wrap: wrap;
		margin:10px 0 0;
	}
	
	.lst-feature .lst-feature-outline {
		width:100%;
		box-sizing:border-box;
		padding:0;
		margin-top:15px;
	}
	
	.lst-feature .lst-feature-outline > .inner {
		box-sizing:border-box;
		height:100%;
		background-color:#ffffff;
		padding:20px 20px 20px;
	}
	
	.lst-feature .lst-feature-outline h3 {
		text-align:center;
		font-size:20px;
		font-weight:500;
		line-height:1.33em;
		margin-top:5px;
	}
	
	.lst-feature .lst-feature-outline p {
		margin-top:15px;
	}
	
	.lst-feature .lst-feature-outline .photo {
		margin:auto;
		max-width:290px;
	}
	
}



/* 東海地方
-------------------------------------------------- */

.sec-tokai-outer .sec-tokai-info {
	display:flex;
	margin-top:80px;
}

.sec-tokai-outer .sec-tokai-info:nth-child(odd) {
	flex-direction:row-reverse;
}

.sec-tokai-outer .sec-tokai-info figure {
	flex-shrink:0;
	width:46.43%;
}

.sec-tokai-outer .sec-tokai-info > div {
	padding-left:70px;
	padding-right:0;
}

.sec-tokai-outer .sec-tokai-info:nth-child(odd) > div {
	padding-left:0;
	padding-right:70px;
}

.sec-tokai-info h3 {
	font-size:28px;
	font-weight:500;
	line-height:1.33em;
	position:relative;
	padding:0 0 0 104px;
}

.sec-tokai-info h3 .icon {
	position:absolute;
	left:0;
	top:-5px;
	color:#ffffff;
	background-color:#94583e;
	box-sizing:border-box;
	width:78px;
	height:78px;
	border-radius:50%;
	text-align:center;
	font-size:13px;
	font-weight:400;
	line-height:1.33em;
	padding-top:16px;
}

.sec-tokai-info h3 strong {
	display:block;
	font-size:30px;
	font-weight:500;
	line-height:1.2em;
}

.sec-tokai-info p {
	margin-top:35px;
}


@media screen and (min-width: 768px) and (max-width: 1000px){
	
	.sec-tokai-outer .sec-tokai-info {
		display:flex;
		margin-top:50px;
	}
	
	.sec-tokai-outer .sec-tokai-info:nth-child(odd) {
		flex-direction:row-reverse;
	}
	
	.sec-tokai-outer .sec-tokai-info figure {
		flex-shrink:0;
		width:40%;
	}
	
	.sec-tokai-outer .sec-tokai-info > div {
		padding-left:40px;
		padding-right:0;
	}
	
	.sec-tokai-outer .sec-tokai-info:nth-child(odd) > div {
		padding-left:0;
		padding-right:40px;
	}
	
	.sec-tokai-info h3 {
		font-size:24px;
		font-weight:500;
		line-height:1.33em;
		position:relative;
		padding:0 0 0 104px;
	}
	
	.sec-tokai-info h3 .icon {
		position:absolute;
		left:0;
		top:-5px;
		color:#ffffff;
		background-color:#94583e;
		box-sizing:border-box;
		width:78px;
		height:78px;
		border-radius:50%;
		text-align:center;
		font-size:13px;
		font-weight:400;
		line-height:1.33em;
		padding-top:16px;
	}
	
	.sec-tokai-info h3 strong {
		display:block;
		font-size:30px;
		font-weight:500;
		line-height:1.2em;
	}
	
	.sec-tokai-info p {
		margin-top:35px;
	}
	
}

@media screen and (max-width: 767px){
	
	#sec-tokai-area {
	}
	
	.sec-tokai-outer {
		margin-top:-40px;
	}
	
	.sec-tokai-outer .sec-tokai-info {
		display:flex;
		flex-wrap: wrap;
		flex-direction:column;
		margin-top:70px;
	}
	
	.sec-tokai-outer .sec-tokai-info:nth-child(odd) {
		flex-direction:row-reverse;
	}
	
	.sec-tokai-outer .sec-tokai-info figure {
		flex-shrink:0;
		width:100%;
	}
	
	.sec-tokai-outer .sec-tokai-info > div {
		width:100%;
		padding-left:0;
		padding-right:0;
	}
	
	.sec-tokai-outer .sec-tokai-info:nth-child(odd) > div {
		padding-left:0;
		padding-right:0;
	}
	
	.sec-tokai-info h3 {
		font-size:20px;
		font-weight:500;
		line-height:1.33em;
		position:relative;
		padding:20px 0 0 70px;
	}
	
	.sec-tokai-info h3 .icon {
		position:absolute;
		left:0;
		top:17px;
		color:#ffffff;
		background-color:#94583e;
		box-sizing:border-box;
		width:56px;
		height:56px;
		border-radius:50%;
		text-align:center;
		font-size:12px;
		font-weight:400;
		line-height:1.33em;
		padding-top:10px;
	}
	
	.sec-tokai-info h3 strong {
		display:block;
		font-size:20px;
		font-weight:500;
		line-height:1.2em;
	}
	
	.sec-tokai-info p {
		margin-top:15px;
	}
	
}



/* 事例紹介
-------------------------------------------------- */

#sec-case-study {
	background:url(../img/common/bg_medium.jpg) repeat;
}

.lst-track-record {
	margin-top:50px;
	overflow:hidden;
	position:relative;
}

.lst-track-record > ul {
	display:flex;
	align-items: stretch;
}

.lst-track-record > ul > li {
	background-color:#ffffff;
	height:100% !important;
}

.lst-track-record ul li > .inner {
	display:flex;
	flex-wrap: wrap;
	padding:4% 5.36% 6.5%;
}

.lst-track-record li h3 {
	flex-shrink:0;
	width:100%;
	text-align:center;
	font-size:28px;
	font-weight:500;
	line-height:1.33em;
	border-bottom:1px #cccccc solid;
	padding-bottom:35px;
	margin-bottom:30px;
}

.lst-track-record li > .inner > figure {
	order:3;
	flex-shrink:0;
	width:38%;
}

.lst-track-record li > .inner > div {
	order:2;
	flex-shrink:0;
	width:62%;
	padding-right:30px;
	box-sizing:border-box;
}

.lst-track-record li .txt-area p {
}

.lst-track-record li .txt-area h4 {
	margin-top:20px;
	font-size:18px;
	font-weight:500;
}

.lst-track-record li .txt-area ul {
	padding:0 0 0 20px;
	margin-top:5px;
}

.lst-track-record li .txt-area ul li {
	list-style:disc;
}

@media screen and (min-width: 768px) and (max-width: 1000px){
	
	#sec-case-study > .inner {
		padding:0 60px;
	}
	
	.lst-track-record li h3 {
		flex-shrink:0;
		width:100%;
		text-align:center;
		font-size:24px;
		font-weight:500;
		line-height:1.33em;
		border-bottom:1px #cccccc solid;
		padding-bottom:25px;
		margin-bottom:30px;
	}
	
	.lst-track-record > ul > li {
		background-color:#ffffff;
		height:auto;
		min-height:715px;
	}
	
}

@media screen and (max-width: 767px){
	
	#sec-case-study {
		background:url(../img/common/bg_medium.jpg) repeat;
	}
	
	.lst-track-record {
		margin-top:25px;
		overflow:hidden;
		position:relative;
	}
	
	.lst-track-record > ul {
		display:block;
	}
	
	.lst-track-record > ul > li {
		background-color:#ffffff;
		height:100% !important;
		margin-top:20px;
	}
	
	.lst-track-record ul li > .inner {
		display:flex;
		flex-wrap: wrap;
		padding:20px 20px 25px;
	}
	
	.lst-track-record li h3 {
		flex-shrink:0;
		width:100%;
		text-align:center;
		font-size:20px;
		font-weight:500;
		line-height:1.33em;
		border-bottom:none;
		padding-bottom:20px;
		margin-bottom:0;
	}
	
	.lst-track-record li > .inner > figure {
		order:2;
		flex-shrink:0;
		width:100%;
	}
	
	.lst-track-record li > .inner > div {
		order:3;
		flex-shrink:0;
		width:100%;
		padding-right:0;
		box-sizing:border-box;
	}
	
	.lst-track-record li .txt-area p {
		margin-top:20px;
	}
	
	.lst-track-record li .txt-area h4 {
		margin-top:20px;
		font-size:16px;
		font-weight:500;
	}
	
	.lst-track-record li .txt-area ul {
		padding:0 0 0 20px;
		margin-top:5px;
	}
	
	.lst-track-record li .txt-area ul li {
		list-style:disc;
	}
	
}



/* 取扱いまでの流れ
-------------------------------------------------- */

#sec-handling-flow {
}

.lst-flow {
	padding-top:40px;
}

.lst-flow li {
	background-color:#ffffff;
	padding:30px 30px;
	margin-top:25px;
	position:relative;
}

.lst-flow li + li:after {
	content:"";
	position:absolute;
	left:50%;
	top:-17px;
	margin-left:-5px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 8px 0 8px;
	border-color: #33150d transparent transparent transparent;
}

.lst-flow dl {
	display:flex;
	align-items:center;
}

.lst-flow dt {
	display:flex;
	align-items:center;
	flex-shrink:0;
	width:35%;
	font-size:19px;
	font-weight:500;
	line-height:1.5em;
	padding-right:5%;
}

.lst-flow dt span {
	flex-shrink:0;
	box-sizing:border-box;
	width:68px;
	height:68px;
	padding:14px 0 0;
	border-radius:34px;
	font-size:17px;
	line-height:1em;
	color:#ffffff;
	background-color:#94583e;
	text-align:center;
	font-weight:500;
	margin-right:25px;
}

.lst-flow dt strong {
	display:block;
	padding-top:5px;
	font-weight:500;
}


@media screen and (max-width: 767px){
	
	.lst-flow {
		padding-top:10px;
	}
	
	.lst-flow li {
		background-color:#ffffff;
		padding:15px 20px;
		margin-top:25px;
		position:relative;
	}
	
	.lst-flow li + li:after {
		content:"";
		position:absolute;
		left:50%;
		top:-17px;
		margin-left:-5px;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 10px 8px 0 8px;
		border-color: #33150d transparent transparent transparent;
	}
	
	.lst-flow dl {
		display:block;
		align-items:center;
	}
	
	.lst-flow dt {
		display:flex;
		align-items:center;
		flex-shrink:0;
		width:100%;
		font-size:17px;
		font-weight:500;
		line-height:1.33em;
		padding-right:5%;
	}
	
	.lst-flow dt span {
		flex-shrink:0;
		box-sizing:border-box;
		width:42px;
		height:42px;
		padding:7px 0 0;
		border-radius:50%;
		font-size:12px;
		line-height:1em;
		color:#ffffff;
		background-color:#94583e;
		text-align:center;
		font-weight:500;
		margin-right:15px;
	}
	
	.lst-flow dt strong {
		display:block;
		padding-top:5px;
		font-size:15px;
		font-weight:500;
	}
	
	.lst-flow dd {
		margin-top:10px;
	}
	
}



/* FAQ
-------------------------------------------------- */

#sec-faq {
}

.lst-faq {
	padding:0 100px;
	margin-top:30px;
}

.lst-faq dl {
	padding:30px 0;
}

.lst-faq dl + dl {
	border:1px #d3c5ae;
	border-top-style:solid;
}

.lst-faq dt {
	font-size:20px;
	font-weight:500;
	line-height:1.5em;
	position:relative;
	padding:0 0 0 67px;
}

.lst-faq dd {
	position:relative;
	padding:3px 0 0 67px;
	margin-top:20px;
}

.lst-faq dt > span ,
.lst-faq dd > span {
	position:absolute;
	left:0;
	top:-5px;
	box-sizing:border-box;
	width:40px;
	height:40px;
	padding:12px 0 0;
	border-radius:50%;
	font-size:17px;
	line-height:1em;
	color:#ffffff;
	background-color:#33150d;
	text-align:center;
	font-weight:500;
}

.lst-faq dd > span {
	background-color:#94583e;
}

#pct-sake {
	width:100%;
	height:560px;
	background:url(../img/common/pct_sake.jpg) no-repeat center center;
	background-size:cover;
}


@media screen and (min-width: 768px) and (max-width: 1000px){
	
	#sec-faq {
	}
	
	.lst-faq {
		padding:0 0;
		margin-top:30px;
	}
	
	#pct-sake {
		width:100%;
		height:300px;
		background:url(../img/common/pct_sake.jpg) no-repeat center center;
		background-size:cover;
	}
	
}


@media screen and (max-width: 767px){
	
	#sec-faq {
	}
	
	.lst-faq {
		padding:0;
		margin-top:10px;
	}
	
	.lst-faq dl {
		padding:15px 0;
	}
	
	.lst-faq dl + dl {
		border:1px #d3c5ae;
		border-top-style:solid;
	}
	
	.lst-faq dt {
		font-size:17px;
		font-weight:500;
		line-height:1.33em;
		position:relative;
		padding:3px 0 0 45px;
	}
	
	.lst-faq dd {
		position:relative;
		padding:3px 0 0 45px;
		margin-top:13px;
	}
	
	.lst-faq dt > span ,
	.lst-faq dd > span {
		position:absolute;
		left:0;
		top:0;
		box-sizing:border-box;
		width:30px;
		height:30px;
		padding:6px 0 0;
		border-radius:50%;
		font-size:17px;
		line-height:1em;
		color:#ffffff;
		background-color:#33150d;
		text-align:center;
		font-weight:500;
	}
	
	.lst-faq dd > span {
		background-color:#94583e;
	}
	
	#pct-sake {
		width:100%;
		height:200px;
		background:url(../img/common/pct_sake.jpg) no-repeat center center;
		background-size:cover;
	}
	
}



/* MISSION
-------------------------------------------------- */

#sec-mission {
	background:url(../img/common/bg_medium.jpg) repeat;
}

.box-mission {
	display:flex;
	margin-top:60px;
}

.box-mission > div {
	flex-shrink:0;
	box-sizing:border-box;
	width:50%;
}

.mission-info {
	padding-right:70px;
}

.mission-info h3 {
	font-size:28px;
	line-height:1.35em;
}

.mission-info p {
	margin-top:25px;
}

.mission-info table  {
	border:none;
	margin-top:40px;
}

.mission-info table caption {
	font-size:18px;
	font-weight:500;
	line-height:1.35em;
	text-align:left;
	padding-bottom:10px;
}

.mission-info table * {
	border:none;
}

.mission-info table th {
	width:110px;
}

.mission-info table a  {
	color:#cc0000;
	text-decoration:underline;
}

.mission-info table a:hover  {
	text-decoration:none;
}

.mission-info table th, 
.mission-info table td {
	line-height:1.33em;
	padding:5px 0;
}

.mission-info .japan-brand {
	margin-top:60px;
}

.group-overview {
	background-color:#ffffff;
	padding:40px 40px;
}

.group-overview h3 {
	text-align:center;
	margin:auto;
	max-width:260px;
}

.group-overview p {
	margin-top:18px;
}

.group-overview p + p {
	margin-top:10px;
}

.prof-group {
	margin-top:45px;
	padding:40px 30px 30px;
	border:2px #154f9e solid;
	border-radius: 6px;
}

.prof-group h4 {
	text-align:center;
	max-width:140px;
	margin:-70px auto 0;
	padding:0 10px;
	background-color:#ffffff;
}

.prof-group.prof-mwt h4 {
	max-width:217px;
	margin:-60px auto 0;
	padding:0 10px;
	background-color:#ffffff;
}

.prof-group a {
	color:#154f9e;
	text-decoration:underline;
}

.prof-group a:hover {
	text-decoration:none;
}


@media screen and (min-width: 768px) and (max-width: 1000px){
	
	.mission-info {
		padding-right:40px;
	}
	
}


@media screen and (max-width: 767px){
	
	#sec-mission {
		background:url(../img/common/bg_medium.jpg) repeat;
	}
	
	.box-mission {
		display:flex;
		flex-wrap:wrap;
		margin-top:30px;
	}
	
	.box-mission > div {
		flex-shrink:0;
		box-sizing:border-box;
		width:100%;
	}
	
	.mission-info {
		padding-right:0;
	}
	
	.mission-info h3 {
		font-size:18px;
		line-height:1.33em;
	}
	
	.mission-info p {
		margin-top:15px;
	}
	
	.mission-info table  {
		border:none;
		margin-top:25px;
	}
	
	.mission-info table caption {
		font-size:18px;
		font-weight:500;
		line-height:1.35em;
		text-align:left;
		padding-bottom:10px;
	}
	
	.mission-info table * {
		border:none;
	}
	
	.mission-info table th {
		width:110px;
	}
	
	.mission-info table a  {
		color:#cc0000;
		text-decoration:underline;
	}
	
	.mission-info table a:hover  {
		text-decoration:none;
	}
	
	.mission-info table th, 
	.mission-info table td {
		line-height:1.33em;
		padding:5px 0;
	}
	
	.mission-info .japan-brand {
		margin-top:25px;
	}
	
	.group-overview {
		background-color:#ffffff;
		padding:20px 20px;
		margin-top:50px;
	}
	
	.group-overview h3 {
		text-align:center;
		max-width:180px;
	}
	
	.group-overview p {
		margin-top:18px;
	}
	
	.group-overview p + p {
		margin-top:10px;
	}
	
	.prof-group {
		margin-top:30px;
		padding:30px 20px 20px;
		border:2px #154f9e solid;
		border-radius: 6px;
	}
	.prof-group.prof-mk {
		margin-top:50px;
	}
	
	.prof-group h4 {
		text-align:center;
		margin-top:-58px;
		max-width:100px;
	}
	
	.prof-group.prof-mwt h4 {
		margin-top:-40px;
		max-width:160px;
	}
	
	.prof-group a {
		color:#154f9e;
		text-decoration:underline;
	}
	
	.prof-group a:hover {
		text-decoration:none;
	}
	
}



/* CONTACT
-------------------------------------------------- */

#sec-contact {
	background:url(../img/common/bg_brown.jpg) repeat;
	color:#ffffff;
	padding:80px 0;
}

#sec-contact h2 {
	font-size:42px;
}

#sec-contact .txt-lead01 {
	margin-top:25px;
}

#sec-contact .button-contact {
	text-align:center;
}

#sec-contact .button-contact a {
	display:block;
	box-sizing:border-box;
	width:350px;
	margin:60px auto 0;
	padding:22px;
	font-size:24px;
	font-weight:500;
	line-height:1.33em;
	background-color:#ffffff;
	border-radius:6px;
	color:#a42020;
}

#sec-contact .button-contact a:hover {
	background-color:#a42020;
	color:#ffffff;
}


@media screen and (min-width: 768px) and (max-width: 1000px){
	
	#sec-contact h2 {
		font-size:32px;
	}
	
}

@media screen and (max-width: 767px){
	
	#sec-contact {
		background:url(../img/common/bg_brown.jpg) repeat;
		color:#ffffff;
		padding:30px 20px;
	}
	
	#sec-contact h2 {
		font-size:20px;
		text-align:left;
	}
	
	#sec-contact .txt-lead01 {
		margin-top:15px;
	}
	
	#sec-contact .button-contact {
		text-align:center;
	}
	
	#sec-contact .button-contact a {
		display:block;
		box-sizing:border-box;
		width:auto;
		max-width:250px;
		margin:30px auto 0;
		padding:15px;
		font-size:18px;
		font-weight:500;
		line-height:1.33em;
		background-color:#ffffff;
		border-radius:4px;
		color:#a42020;
	}
	
}




/* iziModal
-------------------------------------------------- */

.iziModal {
	color:#ffffff;
	text-align:left;
	box-shadow:none !important;
}

.iziModal .iziModal-header.iziModal-noSubtitle{
	height: auto;
	padding: 20px 15px 12px 15px;
}

.iziModal .iziModal-button{
	opacity:0.5;
}

.iziModal-navigate > button{
	opacity:0.5;
	width:60px;
}
	
.iziModal .iziModal-header.iziModal-noSubtitle .iziModal-header-buttons{
	right: 0;
	margin: -20px 0 0 0;
}

.iziModal .iziModal-wrap {
	background-color:transparent !important;
}

.iziModal-content h3 {
	font-size:20px;
	font-weight:500;
	line-height:1.33em;
	margin-top:20px;
}

.iziModal-content p {
	font-size:14px;
	line-height:1.5em;
}

.iziModal-content .detail {
	margin-top:10px;
}

.iziModal-navigate-caption {
	display:none !important;
}

@media screen and (max-width: 767px){
	
	.iziModal-content {
		padding:0 20px !important;
	}
		
	.iziModal .iziModal-header.iziModal-noSubtitle .iziModal-header-buttons{
		right: 0;
		margin: -20px 15px 0 0;
	}
	
}

.lst-track-record {
	overflow:visible;
}

.swiper-slide {
	transition: 0s cubic-bezier(0.19, 1, 0.22, 1);
	opacity:0;
}

.swiper-slide-active {
	transition: 0s cubic-bezier(0.19, 1, 0.22, 1);
	opacity:1;
}

.swiper-button-next ,
.swiper-button-prev {
  color:#a42020;
}

.swiper-button-next {
  right: -45px;
  left: auto;
  background:url(../img/common/arrow_next.svg) no-repeat;
}

.swiper-button-prev {
  right: auto;
  left: -45px;
  background:url(../img/common/arrow_prev.svg) no-repeat;
}

@media screen and (min-width: 768px) and (max-width: 1360px){
	#sec-case-study > .inner {
		padding:0 140px;
	}
}

@media screen and (max-width: 767px){
	
	.swiper-slide {
		opacity:1;
	}
	
	.swiper-button-next ,
	.swiper-button-prev {
		display:none;
	}
		
}
