@charset "UTF-8";

/*　CSS INDEX ========================================================

01_共通
02_CSS Reset
03_YUI font(※ブラウザ間でフォントサイズ統一。フォントサイズ対応表)※相対指定
04_.clearfix(float 回り込み解除)
05_#header(共通ヘッダー)
06_#footer
07_#breadcrumb
08_サイドバー
追加設定
ボタンデザイン

=======================================================================*/

/*=======================================================================
01_共通
========================================================================*/

*,
::before,
::after {
	box-sizing: border-box;
	border-style: solid;
	border-width: 0;
}

a {
	text-decoration: none;
}

html {
	font-size: 62.5%;
}

html, body {
	height: 100%;
	background-color: white;
	margin: 0;
	padding: 0;
	-webkit-font-smoothing: antialiased;
	/* for safari font */
	-webkit-text-size-adjust: 100%;
	/* Remove iOS (Landscape mode) text size adjust & able to zoom for PC */
}

@media (max-width: 767px) {
	html, body {
		padding: 0;
	}
}

/* highlight color */
::-moz-selection {
	background: #a7dcf6;
	text-shadow: none;
}

::selection {
	background: #a7dcf6;
	text-shadow: none;
}

:root {
	/***** Semantic *****/
	--black: #333333;
	--white: #FFFFFF;
	--primary: #0199F5;
	--secondary: #EC5437;
	--family:  #ED6F6F;;
	--background-gray: #F4F4F4;
	--background-blue: #ECF9FF;
	--background-yellow: #FFFDE5;
	--background-red: #FFF3F1;
	--docomo-red: #CC0033;

	/***** Primitive *****/
	/* Neutral */
	--neutral-100: #E7E7E7;
	--neutral-200: #D3D3D3;
	--neutral-300: #C0C0C0;
	--neutral-400: #ACACAC;
	--neutral-500: #999999;
	--neutral-600: #7F7F7F;
	--neutral-700: #666;
	--neutral-800: #4C4C4C;

	/* Primary  */
	--primary-100: #CCEEFF;
	--primary-200: #B3E6FF;
	--primary-300: #80D4FF;
	--primary-400: #33BBFF;
	--primary-500: #00AAFF;
	--primary-600: #0088EB;
	--primary-700: #0062A9;
	--primary-800: #004C83;
	--primary-900: #00345A;

	/* Secondary */
	--secondary-100: #FFDFD9;
	--secondary-200: #FFBFB4;
	--secondary-300: #FFA08E;
	--secondary-400: #FF8069;
	--secondary-500: #FF6043;
	--secondary-600: #D94729;
	--secondary-700: #B33115;
	--secondary-800: #8C1F06;
	--secondary-900: #661200;

	/* Yellow  */
	--yellow-100: #FFFACC;
	--yellow-200: #FFF599;
	--yellow-300: #FFF166;
	--yellow-400: #FFEC33;
	--yellow-500: #FFE700;
	--yellow-600: #D9C800;
	--yellow-700: #B3A400;
	--yellow-800: #8C7D00;
	--yellow-900: #665600;

	/* Success  */
	--success-50: #F5FCE6;
	--success-100: #EBFACC;
	--success-200: #D7F59A;
	--success-300: #C3F067;
	--success-400: #AFEB35;
	--success-500: #9BE602;
	--success-600: #7CD700;
	--success-700: #5DB300;
	--success-800: #3E8C00;
	--success-900: #236600;

	/* Family  */
	--family-50: #FFF6F6;
	--family-100: #FFDDDE;
	--family-200: #FFC5C6;
	--family-300: #FFAEAF;
	--family-400: #FF9899;
	--family-500: #FF8383;
	--family-600: #D66464;
	--family-700: #AD4848;
	--family-800: #853131;
	--family-900: #5C1D1D;
}

/* svg用フィルター
-------------------------------------*/
.svgFillter-primary {
	filter: invert(21%) sepia(32%) saturate(5713%) hue-rotate(185deg) brightness(99%) contrast(100%);
}

.svgFillter-secondary {
	filter: invert(21%) sepia(40%) saturate(3000%) hue-rotate(353deg) brightness(90%) contrast(80%);
}

.svgFillter-family {
	filter: invert(70%) sepia(64%) saturate(2006%) hue-rotate(308deg) brightness(102%) contrast(96%);
}

.svgFillter-white {
	filter: invert(99%) sepia(5%) saturate(416%) hue-rotate(317deg) brightness(113%) contrast(100%);
}

#contents-container {
	max-width: 920px;
	margin: 0 auto 0 0;
	padding: 10px;
	z-index: 0;
}

h2 {
	font-weight: bold;
	font-size: 138.5%;
	/*18px*/
}

h2.hr {
	line-height: 1.6em;
}

hr {
	display: block;
	clear: both;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}

img {
	vertical-align: middle;
}

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

/*=======================================================================
02_CSS Reset (他はnormalize.css参照)
========================================================================*/
p, dl, dt, dd, h1 h2, h3, h4 ul li {
	margin: 0;
	padding: 0;
}

/*=======================================================================
03_YUI font
========================================================================*/
/*-----------------------------------------------------------
Ex.
|px|%|
|10|77|
|11|85|
|12|93|
|13|100|
|14|108|
|15|116|
|16|123.1|
|17|131|
|18|138.5|
|19|146.5|
|20|153.9|
|21|161.6|
|22|167|
|23|174|
|24|182|
|25|189|
|26|197|
------------------------------------------------------------*/
/*
Copyright (c) 2010, Yahoo! Inc. All rights reserved.
Code licensed under the BSD License:
http://developer.yahoo.com/yui/license.html
version: 3.3.0
build: 3167
*/
/**
 * Percents could work for IE, but for backCompat purposes, we are using keywords.
 * x-small is for IE6/7 quirks mode.
 */
body {
	font: 14px/1.5 arial, helvetica, clean, sans-serif;
}

/**
 * Nudge down to get to 13px equivalent for these form elements
 */
select,
input,
button,
textarea {
	font: 99% Avenir, Avenir Next, AXIS, Segoe, 'Hiragino Kaku Gothic Pro', Meiryo, メイリオ;
}

/**
 * To help tables remember to inherit
 */
table {
	font-size: inherit;
	font: 100%;
}

/**
 * Bump up IE to get to 13px equivalent for these fixed-width elements
 */
pre,
code,
kbd,
samp,
tt {
	font-family: monospace;
	line-height: 100%;
}

button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
}

/*==============================//YUI font==============================*/

/*=======================================================================
04_.clearfix(float 回り込み解除)
　※ IE6以上対応（nicolasgallagher.com/micro-clearfix-hack）
========================================================================*/
/* For IE 6/7 only */
.clearfix {
	zoom: 1;
}

.clearfix:before,
.clearfix:after {
	display: table;
	line-height: 0;
	content: "";
}

.clearfix:after {
	clear: both;
}

/*=======================================================================
05_#header
========================================================================*/

/*==============================//#header==============================*/



/*=======================================================================
06_#footer
========================================================================*/


/*==============================//#footer==============================*/

/*=======================================================================
07_.breadcrumb
========================================================================*/
#breadcrumb-container {
	max-width: 920px;
	margin: 0 auto;
}

ul.breadcrumb {
	background: #FFFFFF;
	padding: 0 15px;
	margin: 0;
	list-style: none;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;

}

ul.breadcrumb li.active {
	color: #333;
}

.breadcrumb>li>.divider {
	padding: 0 5px;
	color: #333;
}


/*==============================//#breadcrumb==============================*/

/*=======================================================================
08_サイドバー
========================================================================*/

.sidebar-nav {
	padding: 9px 0;
}


.nav-header {
	display: block;
	padding: 5px 10px;
	font-size: 146.5%;
	font-weight: normal;
	line-height: 20px;
	color: #333;
	text-shadow: none;
	text-transform: uppercase;
}

.sidemenu .nav-list>li>a,
.sidemenu .nav-list .nav-header {
	margin-right: -20px;
	margin-left: -20px;
	text-shadow: none;
}

.sidemenu .well {
	min-height: 20px;
	padding: 10px;
	margin-bottom: 20px;
	background-color: #E5E5E5;
	border: 0;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}

.sidemenu .well ul.nav li a {
	color: #333333;
	font-size: 108%;
}

.sidemenu .nav>li>a:hover,
.sidemenu .nav>li>a:focus {
	text-decoration: underline;
	background-color: inherit;
}

/*==============================//08_サイドバー==============================*/


/*=======================================================================
09_コンテンツ
========================================================================*/
#content {
	max-width: 920px;
	padding: 10px;
	margin: 0 auto;
}

.contents-header {
	margin-bottom: 1.2em;
}

.contents-margin {
	margin-left: 2em;
	margin-right: 2em;
}

.contents_title {
	max-width: 920px;
	margin: 0 auto;
	margin-top: 15px;
}

@media (max-width: 767px) {
	.contents_title span {
		margin-left: 12px;

	}
}


.contents_title img {
	float: left;
	margin-left: 10px;
	padding: 0;
}

.contents_headline {
	min-height: 33px;
	float: right;
	text-align: right;
	display: block;
}

.contents_title span {
	font-size: 216%;
}

@media (min-width: 640px) {
	.contents_headline {
		width: 70%;
		min-height: 33px;
		float: right;
		text-align: right;
	}
}

.contents_title .contentsTtl {
	font-size: 167%;
	color: #404040;
	margin: 0 0 0 1%;
	padding: 0.8% 0 0 0;
	float: left;
	display: block;
	width: 12%;
	min-height: 32px;
	font-weight: normal;
	line-height: 1em;

}

.contents_headline h2 {
	display: block;
	font-size: 108%;
	margin: 0;
	padding: 0.8% 5px 0 0;
	height: 0;
	font-weight: normal;
	line-height: 1.5em;
	color: #404040;
	min-height: 32px;
}

/*=========================================================================*/

/*=======================================================================
10_fullwidth
========================================================================*/


.fullwide {
	max-width: 920px;
	margin: 0 auto;
}

.fullwide h2 {
	text-align: center;
	font-size: 108%
		/*2.4em*/
	;
	font-weight: lighter;
	margin-top: .6em;
}

.topbannerBox .lead h3 {
	color: #808080;
	font-size: 138.5%;
	font-weight: lighter;
	line-height: 1.8em;
}

.fullwide h4 {
	text-align: center;
	font-size: 240%
		/*2.4em*/
	;
	font-weight: lighter;
	margin: 0.5em 0;
	line-height: 1.4em;
}

.fullwide h4.h4_s {
	text-align: left;
	font-size: 153.9%;
}

#second h4.h4_m {
	font-size: 167%;
	margin: 1em 0;
	text-align: left;
}

.fullwide p {
	color: #404040;
	line-height: 1.5em;
}

/*=======================================================================
========================================================================*/

/* -------------------------------
Font weight
------------------------------- */
.tone_bold {
	font-weight: bold;
}

/* -------------------------------
Layout
------------------------------- */
.left {
	float: left;
}

.right {
	float: right;
}

.tcenter {
	text-align: center;
}

.tright {
	text-align: right;
}

.tleft {
	text-align: left;
}

.ttop {
	vertical-align: top;
}

.tmiddle {
	vertical-align: middle;
}

.tbottom {
	vertical-align: bottom;
}

/* -------------------------------
Margin
------------------------------- */
.m50 {
	margin: 50px;
}

.m40 {
	margin: 40px;
}

.m30 {
	margin: 30px;
}

.m20 {
	margin: 20px;
}

.m15 {
	margin: 15px;
}

.m10 {
	margin: 10px;
}

.m5 {
	margin: 5px;
}

.tm50 {
	margin-top: 50px;
}

.tm40 {
	margin-top: 40px;
}

.tm30 {
	margin-top: 30px;
}

.tm20 {
	margin-top: 20px;
}

.tm15 {
	margin-top: 15px;
}

.tm10 {
	margin-top: 10px;
}

.tm5 {
	margin-top: 5px;
}

.bm50 {
	margin-bottom: 50px;
}

.bm40 {
	margin-bottom: 40px;
}

.bm30 {
	margin-bottom: 30px;
}

.bm20 {
	margin-bottom: 20px;
}

.bm15 {
	margin-bottom: 15px;
}

.bm10 {
	margin-bottom: 10px;
}

.bm5 {
	margin-bottom: 5px;
}

.rm20 {
	margin-right: 20px;
}

.rm15 {
	margin-right: 15px;
}

.rm10 {
	margin-right: 10px;
}

.rm5 {
	margin-right: 5px;
}

.lm50 {
	margin-left: 50px;
}

.lm40 {
	margin-left: 40px;
}

.lm30 {
	margin-left: 30px;
}

.lm20 {
	margin-left: 20px;
}

.lm15 {
	margin-left: 15px;
}

.lm10 {
	margin-left: 10px;
}

.lm5 {
	margin-left: 5px;
}

.borderR {
	border-right: 1px solid #888;
}

/* -------------------------------
Color
------------------------------- */
.black {
	color: #000;
}

.white {
	color: #fff;
}

.gray {
	color: #808080;
}

.blue {
	color: #333333;
}

.green {
	color: #60BF80;
}

.yellow {
	color: #BFA600;
}

.orange {
	color: #F37900;
}

.red {
	color: #EC5437;
}

.navy {
	color: #0038A6;
}

/* -------------------------------
Background-Color
------------------------------- */
.bg-white {
	background-color: #ffffff;
}

.bg-blue {
	background-color: var(--primary);
}

.bg-green {
	background-color: #60BF80;
}

.bg-yellow {
	background-color: #BFA600;
}

.bg-orange {
	background-color: #F37900;
}

.bg-red {
	background-color: #E4393B;
}

.bg-violet {
	background-color: #BF69A3;
}

.bg-navy {
	background-color: #0038A6;
}

/* -------------------------------
border-Color
------------------------------- */
.border-white {
	border-top: 1px solid #fff;
}

.border-navy {
	border-top: 1px solid #0038A6;
}

.border-blue {
	border-top: 1px solid var(--primary);
}

.border-green {
	border-top: 1px solid #60BF80;
}

.border-yellow {
	border-top: 1px solid #BFA600;
}

.border-orange {
	border-top: 1px solid #F37900;
}

.border-red {
	border-top: 1px solid #E4393B;
}

.border-violet {
	border-top: 1px solid #BF69A3;
}

/* -------------------------------
border-Color（全体）
------------------------------- */
.border-white-all {
	border: 1px solid #fff;
}

.border-navy-all {
	border: 1px solid #0038A6;
}

.border-blue-all {
	border: 1px solid var(--primary);
}

.border-green-all {
	border: 1px solid #60BF80;
}

.border-yellow-all {
	border: 1px solid #BFA600;
}

.border-orange-all {
	border: 1px solid #F37900;
}

.border-red-all {
	border: 1px solid #E4393B;
}

.border-violet-all {
	border: 1px solid #BF69A3;
}

/* -------------------------------
border-Color（左）
------------------------------- */
.border-white-left {
	border-left: 1px solid #fff;
}

.border-navy-left {
	border-left: 1px solid #0038A6;
}

.border-blue-left {
	border-left: 1px solid var(--primary);
}

.border-green-left {
	border-left: 1px solid #60BF80;
}

.border-yellow-left {
	border-left: 1px solid #BFA600;
}

.border-orange-left {
	border-left: 1px solid #F37900;
}

.border-red-left {
	border-left: 1px solid #E4393B;
}

.border-violet-left {
	border-left: 1px solid #BF69A3;
}

/* -------------------------------
border-Color（右）
------------------------------- */
.border-white-right {
	border-right: 1px solid #fff;
}

.border-navy-right {
	border-right: 1px solid #0038A6;
}

.border-blue-right {
	border-right: 1px solid var(--primary);
}

.border-green-right {
	border-right: 1px solid #60BF80;
}

.border-yellow-right {
	border-right: 1px solid #BFA600;
}

.border-orange-right {
	border-right: 1px solid #F37900;
}

.border-red-right {
	border-right: 1px solid #E4393B;
}

.border-violet-right {
	border-right: 1px solid #BF69A3;
}

/* -------------------------------
border-Color（下）
------------------------------- */
.border-white-bottom {
	border-bottom: 1px solid #fff;
}

.border-navy-bottom {
	border-bottom: 1px solid #0038A6;
}

.border-blue-bottom {
	border-bottom: 1px solid var(--primary);
}

.border-green-bottom {
	border-bottom: 1px solid #60BF80;
}

.border-yellow-bottom {
	border-bottom: 1px solid #BFA600;
}

.border-orange-bottom {
	border-bottom: 1px solid #F37900;
}

.border-red-bottom {
	border-bottom: 1px solid #E4393B;
}

.border-violet-bottom {
	border-bottom: 1px solid #BF69A3;
}


/* -------------------------------
Margin
------------------------------- */
.p50 {
	padding: 50px;
}

.p40 {
	padding: 40px;
}

.p30 {
	padding: 30px;
}

.p20 {
	padding: 20px;
}

.p15 {
	padding: 15px;
}

.p10 {
	padding: 10px;
}

.p5 {
	padding: 5px;
}

.tp50 {
	padding-top: 50px;
}

.tp40 {
	padding-top: 40px;
}

.tp30 {
	padding-top: 30px;
}

.tp20 {
	padding-top: 20px;
}

.tp15 {
	padding-top: 15px;
}

.tp10 {
	padding-top: 10px;
}

.tp5 {
	padding-top: 5px;
}

.bp50 {
	padding-bottom: 50px;
}

.bp40 {
	padding-bottom: 40px;
}

.bp30 {
	padding-bottom: 30px;
}

.bp20 {
	padding-bottom: 20px;
}

.bp15 {
	padding-bottom: 15px;
}

.bp10 {
	padding-bottom: 10px;
}

.bp5 {
	padding-bottom: 5px;
}

.rp35 {
	padding-right: 35px;
}

.rp20 {
	padding-right: 20px;
}

.rp15 {
	padding-right: 15px;
}

.rp10 {
	padding-right: 10px;
}

.rp5 {
	padding-right: 5px;
}

.lp50 {
	padding-left: 50px;
}

.lp40 {
	padding-left: 40px;
}

.lp30 {
	padding-left: 30px;
}

.lp20 {
	padding-left: 20px;
}

.lp15 {
	padding-left: 15px;
}

.lp10 {
	padding-left: 10px;
}

.lp5 {
	padding-left: 5px;
}

/* -------------------------------
パンくず
------------------------------- */

ul.breadcrumbs {
	list-style-type: none;
	margin-left: 0;
	margin-top: 10px;
}

ul.breadcrumbs li {
	display: inline;
	margin-right: 0.5em;
	color: #808080;
}

ul.breadcrumbs li a {
	margin-right: 0.5em;
}

@media (max-width:767px) {
	.breadcrumbs {
		display: none;
	}
}

/* -------------------------------
m-15　製品紹介
------------------------------- */

@media screen and (min-width: 869px) {
	.m-15_sp_only, .m-17_sp_only {
		display: none !important;
	}
}

@media screen and (max-width: 869px) {
	.m-15_pc_only, .m-17_pc_only {
		display: none !important;
	}
}

/* -------------------------------
エビスタグ　画面下余白
------------------------------- */
img[src^="https://ct.ebis.ne.jp"] {
	display: none;
}

/* -------------------------------
店舗ページバナー追加　
------------------------------- */
.nearestStore {
	position: fixed;
	bottom: -200px;
	left: 10px;
	width: 300px;
	z-index: 999;
	background-color: #fff;
	padding: 15px 12px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.1);
	font-size: 16px;
	cursor: pointer;
	transition: .5s;
	-ms-transition: .5s;
	-webkit-transition: .5s;

}

.nearestStore:hover {
	opacity: 0.65;
}

.nearestStore.slideIn {
	bottom: 10px;
}

.nearestStore .infoClose {
	position: absolute;
	top: -22px;
	right: -11px;
	width: 44px;
	height: 44px;
	background-color: #5B5B5B;
	border-radius: 50%;
	text-align: center;
	line-height: 44px;
	font-size: 24px;
	font-weight: bold;
	color: #fff;
}

.nearestStore .text-webfont {
	text-align: center;
	color: var(--primary);
	font-weight: bold;
	margin-bottom: 6px;
}

.nearestStore.slideIn {
	bottom: 10px;
}

.anchor {
	display: block;
	width: 1px;
	height: 1px;
	visibility: hidden;
	margin-bottom: 3rem;
}

@media screen and (max-width: 414px) {
	.nearestStore {
		width: 84%;
		left: 4%;
	}
}

/* -------------------------------
ボタンデザイン
------------------------------- */
.cvButton {
	margin: auto;
	text-align: center;
}

.cvButton a {
	min-width: 200px;
	margin: 0 auto;
	padding: 16px 40px;
	border-radius: calc(1px / 0);
	text-align: center;
	font-weight: bold;
	font-size: 18px;
	text-decoration: none;
	text-decoration: none;
	cursor: pointer;
	box-sizing: border-box;
	color: var(--white);
	background-color: var(--primary);
	border: 2px solid var(--primary);
	box-sizing: border-box;
	line-height: 1;
	display: inline-block;
	position: relative;
	transition: 0.3s ease;
}

.cvButton a::after {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 16px;
	margin: auto;
	font-size: 1.4em;
	font-weight: normal;
	height: fit-content;
	transition: 0.3s ease;
	color: var(--white);
	content: "\f105";
	font-family: "FontAwesome";
}

@media(hover: hover) {
	.cvButton a:hover {
		color: var(--primary);
		background: transparent;
		text-decoration: none;
	}

	.cvButton a:hover:after {
		color: var(--primary);
	}
}

/* secondary */
.cvButton.cvButton_sub a {
	color: var(--black);
	border: 2px solid var(--black);
	background: transparent;
}

.cvButton.cvButton_sub a::after {
	color: var(--black);
}

@media(hover: hover) {
	.cvButton.cvButton_sub a:hover {
		opacity: 0.4;
	}
}

/* tertiary */
.cvButton-tertiary {
	font-size: 18px;
	font-weight: bold;
	color: var(--primary);
	transition: .3s;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
}

.cvButton-tertiary::after {
	font-size: 1.4em;
	font-weight: normal;
	content: "\f105";
	font-family: "FontAwesome";
}

@media(hover: hover) {
	.cvButton-tertiary:hover {
		color: var(--primary-800);
	}
}

@media screen and (max-width: 550px) {
	.cvButton {
		min-width: auto;
		max-width: 100%;
		width: 100%;
		font-size: 16px;
	}

	.cvButton a {
		min-width: auto;
		max-width: 100%;
		width: 100%;
		font-size: 16px;
		line-height: 1.3;
		padding: 16px 32px;
	}

	.cvButton-tertiary{
		font-size: 16px;
	}
}

@container (max-width: 320px) {
	.cvButton {
		min-width: auto;
		max-width: 100%;
		width: 100%;
	}

	.cvButton a {
		min-width: auto;
		max-width: 100%;
		width: 100%;
		font-size: 14px;
		padding: 16px 32px;
	}
}

/* -------------------------------
注釈デザイン
------------------------------- */
ul.notes {
	display: table;
	width: 100%;
	margin: 0;
	padding-left: 0;
}

ul.notes li {
	list-style: none;
	font-size: 12px;
	line-height: 1.6;
}

ul.notes li .notes_head {
	display: table-cell;
	vertical-align: top;
	white-space: nowrap;
	padding-right: 0.5em;
}

ul.notes li .notes_body {
	display: table-cell;
	vertical-align: top;
}

ul.annotation_box li {
	position: relative;
	margin-left: 1.4rem;
	font-size: 1.2rem;
	line-height: 1.7;
}

ul.annotation_box li::before {
	content: '※';
	position: absolute;
	left: -1.4rem;
}

ul.annotation_box.num li {
	margin-left: 2.4rem;
}

ul.annotation_box.num li::before {
	left: -2.4rem;
}

ul.annotation_box.num li.num_add {
	counter-increment: cnt;
}

ul.annotation_box.num li.num_add::before {
	content: "※"counter(cnt);
}
