@charset "utf-8";
/* 
 Theme Name:   kyowa-kimono
 Theme URI:    https://www.kousoku-offset.co.jp/
 Description:  子テーマのJKS京和きもの
 Author:       kousoku@manager
 Author URI:   
 Template:     jks-main
 Version:      1.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html

 /* == Add your own styles below this line ==
--------------------------------------------*/

/*------------------------------------*\
MAIN
\*------------------------------------*/

::-moz-selection {
	background: #000;
	color: #fff;
}
::selection {
	background: #000;
	color: #fff;
}

/* --- SP ---------- */

@media print, screen and (max-width: 740px) {

	body {
		width: 100%;
		margin: 0;
		padding: 0 0 50px 0;
		font-family: 'Noto Serif JP', 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,Georgia,メイリオ,Meiryo,serif;
		line-height: 160%;
		letter-spacing: 1px;
		-webkit-text-size-adjust:100%;
		overflow: hidden;
	}

	html{
		overflow: auto;
	}

}

/* --- PC ---------- */

@media print, screen and (min-width: 741px) {

	body {
		width: 100%;
		margin: 0;
		padding: 0;
		font-size: 100%;
		font-family: 'Noto Serif JP', 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,Georgia,メイリオ,Meiryo,serif;
		line-height: 160%;
		letter-spacing: 1px;
		-webkit-text-size-adjust:100%;
		overflow: hidden;
	}

	a[href^="tel:"] {
		pointer-events: none;
	}

	html{
		overflow: auto;
	}



}



/* リンク */

/* 基本 */

a{
	text-decoration: none;
}

a:link {
	color: #333;
}

a:visited {
	color: #666;
}

a:hover {
	color: #999;
	text-decoration: underline;
}

a:active {
	color: #999;
	text-decoration: underline;
}

a img {
	border: none;
}

img{
	vertical-align: bottom;
}

.opac a:hover img {
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
}

a:hover img.opac {
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
}

.transition{
	-webkit-transition: 0.8s;
	-moz-transition: 0.8s;
	-o-transition: 0.8s;
	-ms-transition: 0.8s;
	transition: 0.8s;
}

.clearfix:after {
	content: "";
	clear: both;
	display: block;
}


.arrow{
	position: relative;
}

.arrow:after{
	display: inline-block;
	position: absolute;
	right: 5%;
	content: "→";
	font-weight: bold;
}


.arrow01{
	position: relative;
	display: inline-block;
	padding: 0 0 0 16px;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px;
}

.arrow01::before, .arrow01::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.arrow02{
	position: relative;
}

.arrow02:after{
	display: inline-block;
	position: absolute;
	right: -30px;
	content: "⇀";
	font-weight: bold;
}


.en{
	font-family: 'Bad Script', cursive;
	letter-spacing: 3px;
}

.yoko-80{
	-webkit-transform: scale(0.8, 1);
	-o-transform: scale(0.8, 1);
	transform: scale(0.8, 1);
	-webkit-transform-origin: top left;
	-o-transform-origin: top left;
	transform-origin: top left;
	width: 125%;
}

strong{
	font-weight: normal;
}

/* 配置 */

.img-center {
	text-align: center;
}

.bold {
	font-weight: bold;
}

.big-120{
	font-size: 120%;
}

.big-150{
	font-size: 150%;
}

.big-180{
	font-size: 180%;
}

.small-80{
	font-size: 80%;
}

.small-70{
	font-size: 70%;
}

.small-60{
	font-size: 60%;
}

.red {
	color: #cc0000;
}

::-webkit-input-placeholder {
	color: #ccc;
}

:-moz-placeholder {
	color: #ccc;
}

img {
	max-width: 100%;
	width: auto;
	height: auto;
}

.i_block{
	display: inline-block;
}


input[type="text"], textarea{
	font-family: inherit;
}

.tag-box a{
	font-size: 8pt;
	display: inline-block;
	text-align: center;
	color: #fff;
	border: 1px solid #000;
	background: #000;
	padding: 1px 15px 1px 15px;
	-webkit-transition: all 0.7s ease;
	-moz-transition: all 0.7s ease;
	-o-transition: all 0.7s ease;
	transition: all  0.7s ease;
	margin-bottom: 5px;
}

.tag-box a:hover {
	color: #000;
	background: #fff;
	text-decoration: none;
}

.dash{
	letter-spacing: -2px;
}

:root {
	--main-color01: #a32042;
	--cv-color01: #c8c8c8;
	--arrow-col: #bfbfbf;
	--accent-col01: #333;
	--accent-col02:#a12142;
	--bk-col01: #f5f5f5;
	--bk-col02: #fdeff2;
}
/* ヘッダー */
/* --- SP ---------- */
@media print, screen and (max-width: 740px) {

	header {
		width: 100%;
		margin: 0;
		padding: 0;
		position: fixed;
		background: var(--bk-col02);
		z-index: 9999;
		height: 50px;
	}

	.header-body{
		position: relative;
		margin: 0;
		padding: 0;
	}

	.header-left{
		width: 100%;
		height: auto;
		position: absolute;
		top: 0;
		left: 0;
	}

	.header-right{
		position: absolute;
		top:0;
		right: 0;
	}

	.header-left .header-logo{
		max-width: 120px;
		position: relative;
		top: 11px;
		left: 3%;
	}

	.header-left .header-logo img{
		max-width: 160px;
	}

	#menu-icon {
		border-radius: 0 0 0 10px;
		/*左下角丸*/
		color: #fff;
		/*アイコン（フォント）色*/
		cursor: pointer;
		display: block;
		height: 50px;
		/*アイコン縦高さ*/
		width: 50px;
		/*アイコン横幅*/
		position: fixed;
		right: 0;
		top: 0;
		transition: all 0.3s linear 0s;
		/*0.3s はアニメーションにかかる時間*/
		z-index: 1100;
	}

	#ham-menu {
		color: #fff;
		box-sizing: border-box;
		height: 100%;
		padding: 0;
		position: fixed;
		right: -256px;
		top: 0;
		transition: transform 0.3s linear 0s;
		width: 256px;
		z-index: 1000;
		overflow-x: hidden;
	}

	#ham-menu .sp-contents a{
		width: 256px;
	}

	#menu-background {
		background-color: #333;
		display: block;
		height: 100%;
		opacity: 0;
		right: 0;
		top: 0;
		transition: all 0.3s linear 0s;
		width: 100%;
		z-index: -1;
	}

	#menu-cb {
		display: none;
		/*チェックボックス本体は消しておく*/
	}

	#menu-cb ~ #menu-icon img:last-child {
		display: none;
	}

	#menu-cb:checked ~ #menu-icon img:first-child {
		display: none;
	}

	#menu-cb:checked ~ #menu-icon img:last-child {
		display: block;
		background: #fff;
		box-sizing: border-box;
		border-right: 1px solid #eee;
	}

	#menu-cb:checked ~ #ham-menu,
	#menu-cb:checked ~ #menu-icon {
		transform: translate(-256px);
		/*メニュー本体横幅 width と合わせる*/
	}

	#menu-cb:checked ~ #ham-menu {
		overflow-y: auto;
	}

	#menu-cb:checked ~ #menu-background {
		opacity: 0.5;
		z-index: 999;
		position: fixed;
	}

	div.header-menu ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}

	header.on ul.header-menu-navi{
		visibility: visible;
		opacity: 1;
		z-index: 100;
		height: 100%;
		width: 100%;
		overflow-y: scroll;
		display: block;
		position: fixed;
		animation: keyframe-fade-in 0.2s linear 0s;
	}

	ul.header-menu-navi li {
		margin: 0;
	}

	ul.header-menu-navi li a{
		display: block;
		padding: 10px 10px;
		color: #333;
		font-size: 100%;
		box-sizing: border-box;
	}

	ul.header-menu-navi .main.blog a {
		padding: 0;
	}

	ul.header-menu-navi li a:hover{
		text-decoration: none;
	}

	ul.header-menu-navi li.main {
		background: #fff;
		border-bottom: 1px solid #eee;
		font-weight: bold;
		/*メニュー背景色*/
	}

	div.header_menu .opac .sp-contents a{
		padding: 10px;
	}

	ul.header-menu-navi li ul.sub li {
		border-bottom: 1px dotted #fff;
		background: var(--bk-col01);
		font-size: 90%;
		font-weight: normal;
		/*メニュー背景色*/
	}

	ul.header-menu-navi li ul.sub li a{
		border-bottom: none;
	}

	ul.header-menu-navi li ul.sub li:first-child {
		border-top: 1px solid #eee;
	}

	ul.header-menu-navi li ul.sub li:last-child {
		border-bottom: 0;
	}

	ul.header-menu-navi li.other{
		background: #333;
	}

	ul.header-menu-navi li.other ul li{
		border-bottom: 1px solid #666;
	}

	ul.header-menu-navi li.other ul li a{
		color: #c8c8c8;
		padding: 5px 10px;
		font-size: 80%;
	}

	.header-right .header-right-body .header-tel{
		display: none;
	}

	.header-right .header-right-body .header-access{
		display: none;
	}

	.header-right .header-right-body .header-sns{
		display: none;
	}

	ul.header-menu-navi li.ham-sns{
		background: var(--main-color01);
	}

	ul.header-menu-navi li.ham-sns ul{
		display: flex;
		display: -webkit-flex;
		display:-ms-flexbox;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	ul.header-menu-navi li.ham-sns ul li{
		display: inline-block;
	}

	ul.header-menu-navi li.ham-sns ul li a{
		padding: 0;
	}
}

/* --- SP ---------- */
@media print, screen and (max-width: 340px) {

	.header-left .title-logo img{
		width: 170px;
	}

	.header-right .header-link .header-search-body a{
		height: 31px;
		top: 0;
		right: 45px;
	}

	.header-right .header-link ul.header-lang{
		right: 10px;
	}

	.header-right .header-link ul.header-lang li a.language{
		width: 23px;
		height: 23px;
	}
}

/* --- PC ---------- */
@media print, screen and (min-width: 741px) {

	header{
		width: 100%;
		margin: 0;
		padding: 0;
		box-sizing: border-box;
		background: #fff;
		height: 70px;
	}

	.header-body{
		margin: 0 auto;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: nowwrap;
		flex-wrap: nowwrap;
	}

	.header-left{
		width: 10%;
		margin-right: 5%;
		box-sizing: border-box;
		position: relative;
	}

	.header-right{
		width: 85%;
	}

	.header-left .header-logo{
		max-width: 160px;
		position: absolute;
		z-index: 1000;
		top: 50%;
		left: 5px;
		transform: translateY(-50%) translateX(0);
		-webkit- transform: translateY(-50%) translateX(0);
	}

	.header-left .header-logo img{
		max-width: 160px;
	}

	.header-right .header-right-body{
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: nowwrap;
		flex-wrap: nowwrap;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
	}

	.header-right ul.header-menu-navi{
		width: 100%;
		margin: 0;
		padding: 0;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: nowrap;
		flex-wrap: nowrap;
	}

	.header-right ul.header-menu-navi li.main{
		position: relative;
		list-style: none;
		display: table;
		vertical-align: middle;
		height: 70px;
	}

	ul.header-menu-navi .main.blog a,
	ul.header-menu-navi li.other,
	ul.header-menu-navi li.ham-sns{
		display: none;
	}

	.header-right ul.header-menu-navi li.main a.mainmenu{
		display: table-cell;
		padding: 0 15px;
		vertical-align: middle;
		height: 70px;
		color: #000;
		font-weight: bold;
	}

	/* サブメニュー */
	.header-right ul.header-menu-navi li.main ul.sub{
		position: absolute;
		top: 68px;
		width: 180px;
		height: 0;
		padding: 0;
		background: #fff;
		border-top: 2px solid var(--main-color01);
		opacity: 0;
		visibility: hidden;
	}
	.header-right ul.header-menu-navi li.main:hover ul.sub{
		width: 180px;
		left: 0;
		height: auto;
		display: inline-block;
		background: #fff;
		border-top: 2px solid var(--main-color01);
		opacity: 1;
		visibility: visible;
		box-shadow: 0 0 4px #999;
		z-index: 9997;
		line-height: 160%;
	}
	.header-right ul.header-menu-navi li.main:nth-of-type(3) ul.sub,
	.header-right ul.header-menu-navi li.main:nth-of-type(4) ul.sub{
		width: 280px;
	}
	.header-right ul.header-menu-navi li.main ul.sub li{
		font-weight: normal;
		list-style: none;
		text-align: left;
	}

	.header-right ul.header-menu-navi li.main ul.sub li a{
		color: var(--main-color01);
		display: block;
		padding: 10px 15px 10px 15px;
		text-decoration: none;
		background-color: #f8eaea;
	}
	.header-right ul.header-menu-navi li.main ul.sub li a:hover{
		color: #fff;
		background-color: #b44764;
	}

}

@media print, screen and (min-width: 741px) and (max-width: 880px) {

	header {
		height: 35px;
	}

	.header-left .header-logo{
		max-width: 80px;
	}

	.header-left .header-logo img{
		max-width: 80px;
	}

	.header-right ul.header-menu-navi li.main{
		height: 35px;
		font-size: 8px;
	}

	.header-right ul.header-menu-navi li.main a.mainmenu{
		padding: 0 5px;
		height: 35px;
	}

	.header-right ul.header-menu-navi li.main ul.sub{
		top: 34px;
	}

	.header-right .header-right-body .header-tel{
		width: 89px;
	}

	.header-right .header-right-body .header-access{
		display: none;
	}

	.header-right .header-right-body .header-sns{
		display: none;
	}

}

@media print, screen and (min-width: 881px) and (max-width: 1100px) {

	header {
		height: 35px;
	}

	.header-left .header-logo{
		max-width: 80px;
	}

	.header-left .header-logo img{
		max-width: 80px;
	}

	.header-right ul.header-menu-navi li.main{
		height: 35px;
		font-size: 10px;
	}

	.header-right ul.header-menu-navi li.main a.mainmenu{
		padding: 0 8px;
		height: 35px;
	}

	.header-right ul.header-menu-navi li.main ul.sub{
		top: 34px;
	}

	.header-right .header-right-body .header-tel{
		width: 89px;
	}

	.header-right .header-right-body .header-access{
		width: 63px;
	}

	.header-right .header-right-body .header-sns{
		width: 35px;
	}

}


@media print, screen and (min-width: 1101px) and (max-width: 1280px) {

	header {
		height: 50px;
	}

	.header-left .header-logo{
		max-width: 120px;
	}

	.header-left .header-logo img{
		max-width: 120px;
	}

	.header-right ul.header-menu-navi li.main{
		height: 50px;
		font-size: 12px;
	}

	.header-right ul.header-menu-navi li.main a.mainmenu{
		padding: 0 10px;
		height: 50px;
	}

	.header-right ul.header-menu-navi li.main ul.sub{
		top: 49px;
	}

	.header-right .header-right-body .header-tel{
		width: 127px;
	}

	.header-right .header-right-body .header-access{
		width: 90px;
	}

	.header-right .header-right-body .header-sns{
		width: 50px;
	}

}

@media print, screen and (min-width: 1281px) and (max-width: 1480px) {

	header {
		height: 50px;
	}

	.header-left .header-logo{
		max-width: 120px;
	}

	.header-left .header-logo img{
		max-width: 120px;
	}

	.header-right ul.header-menu-navi li.main{
		height: 50px;
		font-size: 14px;
	}

	.header-right ul.header-menu-navi li.main a.mainmenu{
		padding: 0 15px;
		height: 50px;
	}

	.header-right ul.header-menu-navi li.main ul.sub{
		top: 49px;
	}

	.header-right .header-right-body .header-tel{
		width: 127px;
	}

	.header-right .header-right-body .header-access{
		width: 90px;
	}

	.header-right .header-right-body .header-sns{
		width: 50px;
	}

}


.tag-name a{
	display: inline-block;
}

.tag-name a:after{
	content: "｜";
}

.tag-name a:last-child:after{
	content: "";
}


/* メイン */
/* --- SP ---------- */
@media print, screen and (max-width: 740px) {

	.pc-contents{
		display: none !important;
	}

	main{
		width: 100%;
		margin: 50px 0 0 0;
		padding: 0;
		display: block;
	}

	.main-title{
		position: relative;
		height: 200px;
	}

	.main-title h1{
		color: #fff;
		margin: auto;
		text-align: center;
		position: absolute;
		top: 40px;
		bottom: 0;
		left: 0;
		right: 0;
		height: 50px;
		font-size: 140%;
		font-weight: normal;
	}

	.main-title h1 span{
		background: rgba(253, 239, 242, .85);
		color: #333;
		box-shadow:0px 0px 15px 1px #a3a3a3;
		padding: 5px 12px;
	}

	.w-common{
		max-width: 1200px;
		width: 90%;
		margin: 0 auto;
		box-sizing: border-box;
	}

	.common-wrapper{
		width: 90%;
		margin: 0 auto;
		padding: 0 5%;
	}

	#breadcrumb{
		display: none;
	}

	.btn01{
		width: 100%;
		margin: 5px auto;
		border: 1px solid #666;
		box-sizing: border-box;
	}

	.btn01 a{
		display: block;
		text-align: center;
		color: #333;
		padding: 15px 0;
		font-size: 80%;
		-webkit-transition: all 0.7s ease;
		-moz-transition: all 0.7s ease;
		-o-transition: all 0.7s ease;
		transition: all  0.7s ease;
	}

	.btn01 a:hover {
		color: #fff;
		background: #000;
		text-decoration: none;
		opacity: 0.75 ;
	}

	.btn02{
		width: 100%;
		margin: 5px auto;
		border: 1px solid #000;
		box-sizing: border-box;
		background: #000;
	}

	.btn02 a{
		display: block;
		text-align: center;
		color: #fff;
		padding: 15px 0;
		-webkit-transition: all 0.7s ease;
		-moz-transition: all 0.7s ease;
		-o-transition: all 0.7s ease;
		transition: all  0.7s ease;
	}

	.btn02 a:hover {
		color: #000;
		background: #fff;
		text-decoration: none;
	}

	.btn03{
		width: 100%;
		margin: 15px auto;
		box-sizing: border-box;
		background: var(--main-color01);
	}

	.btn03 a{
		display: block;
		text-align: center;
		color: #fff;
		padding: 9px 0;
		-webkit-transition: all 0.7s ease;
		-moz-transition: all 0.7s ease;
		-o-transition: all 0.7s ease;
		transition: all  0.7s ease;
		position: relative;
	}

	.btn03 a span:after{
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 4px 0 4px 8px;
		border-color: transparent transparent transparent #fff;
		position: absolute;
		top: 19px;
		right: 12px;
	}

	.btn03 a:hover {
		color: #fff;
		background: var(--main-color01);
		text-decoration: none;
	}

	.btn04{
		width: 100%;
		margin: 12px auto;
		border: 1px solid var(--main-color01);
		box-sizing: border-box;
		background: #fff;
	}

	.btn04 a{
		display: block;
		text-align: center;
		color: var(--main-color01);
		padding: 15px 0;
		-webkit-transition: all 0.7s ease;
		-moz-transition: all 0.7s ease;
		-o-transition: all 0.7s ease;
		transition: all  0.7s ease;
	}

	.btn04 a:hover {
		color: #fff;
		background: var(--main-color01);
		text-decoration: none;
	}

}

@media print, screen and (max-width: 480px) {

	main{
		padding-top: 50px;
		margin-top: 0;
	}

}

/* --- PC ---------- */
@media print, screen and (min-width: 741px) {

	.sp-contents{
		display: none !important;
	}

	.pc-i_block{
		display: inline-block;
	}

	main{
		width: 100%;
		margin: 0;
		padding: 0;
		display: block;
	}

	.main-title{
		position: relative;
		height: 350px;
	}

	.main-title h1{
		color: #fff;
		margin: auto;
		text-align: center;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		height: 50px;
		font-size: 200%;
		font-weight: normal;
	}

	.main-title h1 span{
		background: rgba(253, 239, 242, .85);
		color: #333;
		box-shadow:0px 0px 15px 1px #a3a3a3;
		padding: 8px 12px;
	}

	.w-common{
		max-width: 1200px;
		width: 90%;
		margin: 0 auto;
		box-sizing: border-box;
	}

	#breadcrumb{
		max-width: 1200px;
		width: 90%;
		background: #fff;
		margin: 0 auto;
	}

	#breadcrumb ul{
		margin: 0;
		padding: 0;
	}

	#breadcrumb ul li{
		display: inline;
		font-size: 9pt;
		list-style: none;
	}

	#breadcrumb ul li::after{
		content: " ＞ ";
	}

	#breadcrumb ul li:last-child::after{
		content: "";
	}

	#breadcrumb ul li:last-child{
		color: var(--main-color01);
	}

	.btn01{
		width: 100%;
		margin: 15px auto;
		border: 1px solid var(--main-color01);
		box-sizing: border-box;
	}

	.btn01 a{
		display: block;
		text-align: center;
		color: var(--main-color01);
		background: #fff;
		padding: 15px 0;
		font-size: 80%;
		-webkit-transition: all 0.7s ease;
		-moz-transition: all 0.7s ease;
		-o-transition: all 0.7s ease;
		transition: all  0.7s ease;
	}

	.btn01 a:hover {
		color: #fff;
		background: var(--main-color01);
		text-decoration: none;
		opacity: 0.75 ;
	}

	.btn02{
		width: 100%;
		margin: 5px auto;
		border: 1px solid #a32042;
		box-sizing: border-box;
		background: #a32042;
	}

	.btn02 a{
		display: block;
		text-align: center;
		color: #fff;
		padding: 15px 0;
		-webkit-transition: all 0.7s ease;
		-moz-transition: all 0.7s ease;
		-o-transition: all 0.7s ease;
		transition: all  0.7s ease;
	}

	.btn02 a:hover {
		color: #000;
		background: #fff;
		text-decoration: none;
	}

	.btn03{
		width: 100%;
		margin: 15px auto;
		box-sizing: border-box;
		background: var(--main-color01);
	}

	.btn03 a{
		display: block;
		text-align: center;
		color: #fff;
		padding: 12px 0;
		-webkit-transition: all 0.7s ease;
		-moz-transition: all 0.7s ease;
		-o-transition: all 0.7s ease;
		transition: all  0.7s ease;
		position: relative;
	}

	.btn03 a span:after{
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 4px 0 4px 8px;
		border-color: transparent transparent transparent #fff;
		position: absolute;
		top: 19px;
		right: 12px;
	}

	.btn03 a:hover {
		color: #fff;
		background: var(--main-color01);
		text-decoration: none;
	}

	.btn04{
		width: 100%;
		margin: 15px auto;
		border: 1px solid #aaaaaa;
		box-sizing: border-box;
		background: #fff;
	}

	.btn04 a{
		display: block;
		text-align: center;
		color: var(--main-color01);
		padding: 15px 0;
		-webkit-transition: all 0.7s ease;
		-moz-transition: all 0.7s ease;
		-o-transition: all 0.7s ease;
		transition: all  0.7s ease;
	}

	.btn04 a:hover {
		color: #fff;
		background: var(--main-color01);
		text-decoration: none;
	}

}


/* フッター */
/* --- SP ---------- */
@media print, screen and (max-width: 740px) {

	.sidebar-link{
		display:none;
	}

	.sp-bottom-link{
		position: fixed;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: nowwrap;
		flex-wrap: nowwrap;
		z-index: 100;
		bottom: 0;
	}

	.sp-bottom-link a{
		display: block;
		width: 25%;
	}

	.pagetop{
		width: 38px;
		position: fixed;
		bottom: 60px;
		right: 6px;
		z-index: 1000;
	}

	footer{
		background: #fff;
		padding-bottom: 10px;
	}

	.footer-link{
		width: 100%;
		padding: 25px 0;
		line-height: 0;
		background: var(--bk-col01);
	}

	.footer-link-btn{
		position: relative;
		text-align: center;
		width: 90%;
		margin: 0 auto;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.footer-link-btn a{
		margin: 0 1%;
		width: 48%;
		margin-bottom: 10px;
	}

	.footer-link-btn a img{
		width: 100%;
	}

	.footer-body{
		width: 100%;
		text-align: center;
		padding-top: 25px;
	}

	.footer-body a{
		display: block;
		text-align: center;
	}

	.footer-body a img{
/*		max-width: 80px;*/
	}

	.footer-bottom-link{
		display: none;
	}

	copyright{
		font-size: 8pt;
	}
	
	
	.fixed-banner {
		position: fixed;
		bottom: 60.19px;
		left: 50%;
		z-index: 101;
		width: 70%;
		transform: translateX(-50%);
	}
	
	.fixed-banner a{
		width: 100%;
	}

	.fixed-banner img {
		vertical-align: bottom;
	}

	.fixed-banner .close {
		position: absolute;
		top: 0;
		right: 0;
		display: table;
		background: rgba(166,31,37,0.4);
		width: 20px;
		height: 20px;
		text-decoration: none;
	}
	
	.fixed-banner .close::after {
		content: '\00d7';
		display: table-cell;
		text-align: center;
		color: #fff;
		vertical-align: middle;
		font-size: 15px;
		font-weight: bold;
	}

}


/* --- PC ---------- */
@media print, screen and (min-width: 741px) {

	.sidebar-link{
		position: fixed;
		top: 24%;
		right: 0;
		z-index: 1;
	}

	.sidebar-link a{
		display: block;
		margin-bottom: 2px;
	}

	.pagetop{
		width: 38px;
		position: fixed;
		bottom: 10px;
		right: 1px;
		z-index: 1000;
	}


	footer{
		background: #fff;
		padding-bottom: 10px;
	}

	.footer-link{
		width: 100%;
		padding: 25px 0;
		line-height: 0;
		background: var(--bk-col01);
	}

	.footer-link-btn{
		position: relative;
		text-align: center;
		width: 90%;
		max-width: 1200px;
		margin: 0 auto;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: nowrap;
		flex-wrap: nowrap;
		justify-content: center;
	}

	.footer-link-btn a{
		max-width: 254px;
		margin: 0 0.5%;
		width: 48%;
	}

	.footer-link-btn a img{
		max-width: 254px;
		width: 100%;
	}

	.footer-body{
		width: 100%;
		text-align: center;
		padding-top: 25px;
	}

	.footer-body a{
		text-align: center;
	}

	.footer-body a img{
/*		max-width: 100px;*/
	}

	.footer-bottom-link{
		margin-top: 25px;
		font-size: 80%;
	}

	.footer-bottom-link a{
		padding: 0 10px;
		border-right: 1px solid;
	}

	.footer-bottom-link a:last-child{
		border-right: 0;
	}

	copyright{
		font-size: 8pt;
	}	
	
	
	.fixed-banner {
		position: fixed;
		right: 15px;
		top: initial;
		z-index: 101;
		width: 400px;
	}
	
	.fixed-banner .lp-bnr {
		display: block;
	    margin-top: 15px;
	}

	.fixed-banner .lp-bnr:hover img{
		opacity: .85;
	}

	.fixed-banner .close {
		position: absolute;
		top: 15px;
		right: 0;
		display: table;
		background: rgba(166,31,37,0.4);
		width: 30px;
		height: 30px;
		text-decoration: none;
	}
	.fixed-banner .close::after {
		content: '\00d7';
		display: table-cell;
		text-align: center;
		color: #fff;
		vertical-align: middle;
		font-size: 20px;
		font-weight: bold;
	}
}


@keyframes fade-in {
	0% {
		display: none;
		opacity: 0;
	}

	1% {
		display: flex;
		opacity: 0;
	}

	100% {
		display: flex;
		opacity: 1;
	}
}

@-moz-keyframes fade-in {
	0% {
		display: none;
		opacity: 0;
	}

	1% {
		display: flex;
		opacity: 0;
	}

	100% {
		display: flex;
		opacity: 1;
	}
}

/*------------------------------------*\
QA・TOPICS等の共通フレーム
\*------------------------------------*/

/* --- SP ---------- */

@media print, screen and (max-width: 740px) {
	.mframe-common .menu-list{
		padding: 30px 0 30px 0;
	}

	.mframe-common .menu-list ul{
		padding: 0;
		list-style-type: none;
	}

	.mframe-common .menu-list input{
		display: none;
	}

	.mframe-common .menu-list label{
		display: block;
		margin: 1.5px auto 0;
		padding : 3px 10px;
		box-sizing: border-box;
		font-weight: bold;
		cursor :pointer;
		transition: all 0.5s;
		font-size: 90%;
		background :var(--main-color01);
		max-width: 600px;
		width: 100%;
		color: #fff;
		border: 1px solid var(--main-color01);
		position: relative;
	}

	.mframe-common .menu-list label:after{
		position: absolute;
		content: "▼";
		color: rgb(255, 255, 255);
		right: 0.7em;
		top: 15%;
		font-size: 70%;
	}

	.mframe-common .menu-list ul{
		list-style-type: none;
		height: 0;
		padding: 0;
		overflow: hidden;
		opacity: 0;
		transition: 0.8s;
		max-width: 600px;
		width: 100%;
		margin: 0 auto;
		color: var(--main-color01);
	}

	.mframe-common .menu-list ul li{
		border-bottom: 1px dotted #ddd;
		font-size: 90%;
		box-sizing: border-box;
		background: #f8f8f3;
		display: none;
	}

	.mframe-common .menu-list ul li:last-child{
		border-bottom: 1px solid var(--main-color01);
		font-size: 90%;
		box-sizing: border-box;
	}

	.mframe-common .menu-list li a:hover{
		text-decoration: none;
	}

	.mframe-common .menu-list .select-accordion:checked + .all-inner{
		height: auto;
		box-sizing: border-box;
		background: #fff;
		opacity: 1;
	}

	.mframe-common .menu-list .select-accordion:checked + .all-inner li{
		padding: 5px 10px;
		display: block;
		border-left: 1px solid var(--main-color01);
		border-right: 1px solid var(--main-color01);
		box-sizing: border-box;
	}

	.mframe-common .contents-bk{
		border-top: 1px solid var(--main-color01);
		background-color: #f0ecde;
		background-image: url(images/common/mframe-common-bk.png);
		background-size: contain;
		background-position: center top;
		background-repeat:no-repeat;
		padding-bottom: 40px;
	}

	.mframe-common .contents-bk .mframe-common-body{
		background: #fff;
		padding: 20px 20px;
		margin-top:  20px;
		box-sizing: border-box;
	}

	.mframe-common .other-kimono-bk{
		text-align: center;
		padding: 30px 0;
	}

	.mframe-common .other-kimono-bk .other-kimono-body h2{
		text-align: center;
		font-size: 130%;
	}

	.mframe-common .other-kimono-bk .other-kimono-body ul{
		padding: 0;
		list-style-type: none;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-flex-wrap: wrap;
		flex-wrap:  wrap;
		margin: 25px 0;
	}

	.mframe-common .other-kimono-bk .other-kimono-body li{
		width: 49%;
		margin-right: 1.5%;
		margin-bottom: 10px;
	}

	.mframe-common .other-kimono-bk .other-kimono-body li a{
		display: block;
	}

	.mframe-common .other-kimono-bk .other-kimono-body li:nth-child(2n){
		margin-right: 0;
	}

	.mframe-common .other-kimono-bk .other-kimono-body li p{
		margin: 0;
		text-align: left;
		font-weight: bold;
		letter-spacing: 0;
		font-size: 90%;
	}

}

/* --- PC ---------- */
@media print, screen and (min-width: 741px) {
	.mframe-common .menu-list{
		padding: 50px 0 0;
	}

	.mframe-common .menu-list ul{
		padding: 0;
		list-style-type: none;
		display: -webkit-flex;
		display: flex;
		-webkit-box-align: end;
		-ms-flex-align: end;
		align-items: flex-end;
		border-top: 1px solid var(--main-color01);
	}

	.mframe-common .menu-list input{
		display: none;
	}

	.mframe-common .menu-list ul{
		padding: 0;
		list-style-type: none;
		display: -webkit-flex;
		display: flex;
		-webkit-box-align: end;
		-ms-flex-align: end;
		align-items: flex-end;
		border-top: 1px solid var(--main-color01);
		margin-bottom: 0;
	}

	.mframe-common .menu-list ul li{
		width: calc(100% / 6);
		box-sizing: border-box;
		border-right: 1px solid var(--main-color01);
		background: #fff;
		text-align: center;
		padding: 5px 0;
		-webkit-transition: all 0.7s ease;
		-moz-transition: all 0.7s ease;
		-o-transition: all 0.7s ease;
		transition: all  0.7s ease;
		font-size: 80%;
	}

	.mframe-common .menu-list ul li:first-child{
		border-left: 1px solid var(--main-color01);
	}

	.mframe-common .menu-list ul li a{
		display: block;
		color: var(--main-color01);
		font-weight: bold;
		text-align: center;
	}

	.mframe-common .menu-list ul li.on{
		background: var(--main-color01);
		color: #fff;
		position: relative;
	}

	.mframe-common .menu-list ul li.on:after{
		content:"";
		position: absolute;
		bottom: -10px;
		left: 0;
		right: 0;
		margin: 0 auto;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 14px 12.5px 0 12.5px;
		border-color: var(--main-color01) transparent transparent transparent;
	}

	.mframe-common .menu-list ul li:hover{
		background: var(--main-color01);
	}

	.mframe-common .menu-list ul li.on:hover{
		background: var(--main-color01);
	}

	.mframe-common .menu-list ul li:hover a{
		color: #fff;
		text-decoration: none;
	}

	_:-ms-lang(x), .mframe-common .menu-list ul li{
		width: 16.6%;
	}

	.mframe-common .contents-bk{
		border-top: 1px solid var(--main-color01);
		background: var(--bk-col02);
		padding-bottom: 90px;
		background-size: contain;
	}

	.mframe-common .contents-bk .mframe-common-body{
		background: #fff;
		padding: 50px 150px;
		margin-top: 50px;
		box-sizing: border-box;
	}

	.mframe-common .other-kimono-bk{
		text-align: center;
		padding: 40px 0;
	}

	.mframe-common .other-kimono-bk .other-kimono-body h2{
		text-align: center;
		font-size: 180%;
	}

	.mframe-common .other-kimono-bk .other-kimono-body ul{
		padding: 0;
		list-style-type: none;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		margin: 50px 0;
	}

	.mframe-common .other-kimono-bk .other-kimono-body li{
		width: 24.5%;
		margin-right: 1%
	}

	.mframe-common .other-kimono-bk .other-kimono-body li a{
		display: block;
	}

	.mframe-common .other-kimono-bk .other-kimono-body li:last-child{
		margin-right: 0;
	}

	.mframe-common .other-kimono-bk .other-kimono-body li p{
		margin: 0;
		text-align: left;
		font-weight: bold;
		letter-spacing: 0;
	}

}


@media print, screen and (min-width: 1101px) and (max-width: 1280px) {
	.mframe-common .contents-bk .mframe-common-body{
		padding: 50px 100px;
	}
}

@media print, screen and (min-width: 881px) and (max-width: 1100px) {
	.mframe-common .contents-bk .mframe-common-body{
		padding: 50px 80px;
	}

	.mframe-common .other-kimono-bk .other-kimono-body ul{
		-webkit-flex-wrap: wrap;
		flex-wrap:  wrap;
		max-width: 600px;
		width: 100%;
		margin: 50px auto;
	}

	.mframe-common .other-kimono-bk .other-kimono-body ul li{
		-webkit-flex-wrap: wrap;
		width: 49%;
		margin-bottom: 15px;
	}

	.mframe-common .other-kimono-bk .other-kimono-body ul li:nth-child(2n){
		margin-right: 0;
	}
}

@media print, screen and (min-width: 741px) and (max-width: 880px) {
	.mframe-common .menu-list ul li{
		font-size: 70%;
	}

	.mframe-common .contents-bk .mframe-common-body{
		padding: 50px 40px;
	}

	.mframe-common .other-kimono-bk .other-kimono-body ul{
		-webkit-flex-wrap: wrap;
		flex-wrap:  wrap;
		max-width: 600px;
		width: 100%;
		margin: 50px auto;
	}

	.mframe-common .other-kimono-bk .other-kimono-body ul li{
		-webkit-flex-wrap: wrap;
		width: 49%;
		margin-bottom: 15px;
	}

	.mframe-common .other-kimono-bk .other-kimono-body ul li:nth-child(2n){
		margin-right: 0;
	}

}


/* --- SP ---------- */
@media print, screen and (max-width: 768px) {
	.ly-single{
		box-sizing: border-box;
	}
	.ly-single > article{
		box-sizing: border-box;
	}
	.ly-double{
		box-sizing: border-box;
	}
	.ly-double > article{
		box-sizing: border-box;
	}
	.ly-triple{
		box-sizing: border-box;
	}
	.ly-triple > article{
		box-sizing: border-box;
	}
	.ly-quadruple{
		display: flex;
		display: -webkit-flex;
		display:-ms-flexbox;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		box-sizing: border-box;
	}
	.ly-quadruple > article{
		width: 48%;
		margin: 0 4% 3% 0;
		box-sizing: border-box;
	}
	.ly-quadruple > article:nth-of-type(2n){
		margin: 0 0 3% 0;
	}
}
@media print, screen and (max-width: 480px) {
	.ly-quadruple{
		display: block;
	}
	.ly-quadruple > article{
		width: 100%;
		margin: 0 0 0 0;
		box-sizing: border-box;
	}
	.ly-quadruple > article:nth-of-type(2n){
		margin: 0 0 0 0;
	}
}
/* --- PC ---------- */
@media print, screen and (min-width: 769px) {
	.ly-single{
		box-sizing: border-box;
	}
	.ly-single > article{
		box-sizing: border-box;
	}
	.ly-double{
		display: flex;
		display: -webkit-flex;
		display:-ms-flexbox;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		box-sizing: border-box;
	}
	.ly-double > article{
		width: 48%;
		margin: 0 4% 3% 0;
		box-sizing: border-box;
	}
	.ly-double > article:nth-of-type(2n){
		margin: 0 0 3% 0;
	}
	.ly-triple{
		display: flex;
		display: -webkit-flex;
		display:-ms-flexbox;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		box-sizing: border-box;
	}
	.ly-triple > article{
		width: 32%;
		margin: 0 2% 2% 0;
		box-sizing: border-box;
	}
	.ly-triple > article:nth-of-type(3n){
		margin: 0 0 2% 0;
	}
	.ly-quadruple{
		display: flex;
		display: -webkit-flex;
		display:-ms-flexbox;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		box-sizing: border-box;
	}
	.ly-quadruple > article{
		width: 23.5%;
		margin: 0 2% 2% 0;
		box-sizing: border-box;
	}
	.ly-quadruple > article:nth-of-type(4n){
		margin: 0 0 2% 0;
	}
}
@media print, screen and (min-width: 769px) and (max-width: 1200px) {
	.ly-quadruple > article{
		width: 48%;
		margin: 0 4% 3% 0;
		box-sizing: border-box;
	}
	.ly-quadruple > article:nth-of-type(2n){
		margin: 0 0 2% 0;
	}
	.ly-quadruple > article:nth-of-type(4n){
		margin: 0 0 2% 0;
	}
}