@charset "utf-8";

/* ==============================================================
   #リセット
   ============================================================== */

audio:not([controls]) {
	display: none; /* Chrome 44-, iOS 8+, Safari 9+ */
}
button {
	overflow: visible; /* Internet Explorer 11- */
	-webkit-appearance: button; /* iOS 8+ */
}
details {
	display: block; /* Edge 12+, Firefox 40+, Internet Explorer 11-, Windows Phone 8.1+ */
}
html {
	-ms-overflow-style: -ms-autohiding-scrollbar; /* Edge 12+, Internet Explorer 11- */
	overflow-y: scroll; /* All browsers without overlaying scrollbars */
	-webkit-text-size-adjust: 100%; /* iOS 8+ */
}
input {
	-webkit-border-radius: 0 /* iOS 8+ */
}
input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;/* iOS 8+ */
}
input[type="number"] {
	width: auto;/* Firefox 36+ */
}
input[type="search"] {
	-webkit-appearance: textfield;/* Chrome 45+, Safari 9+ */
}
 input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
 -webkit-appearance: none;/* Chrome 45+, Safari 9+ */
}
main {
	display: block; /* Android 4.3-, Internet Explorer 11-, Windows Phone 8.1+ */
}
pre {
	overflow: auto; /* Internet Explorer 11- */
}
progress {
	display: inline-block; /* Internet Explorer 11-, Windows Phone 8.1+ */
}
small {
	font-size: 75%; /* All browsers */
}
summary {
	display: block; /* Firefox 40+, Internet Explorer 11-, Windows Phone 8.1+ */
}
svg:not(:root) {
	overflow: hidden; /* Internet Explorer 11- */
}
template {
	display: none; /* Android 4.3-, Internet Explorer 11-, iOS 7-, Safari 7-, Windows Phone 8.1+ */
}
textarea {
	overflow: auto; /* Edge 12+, Internet Explorer 11- */
}
 [hidden] {
 display: none; /* Internet Explorer 10- */
}
/*
 * Universal inheritance
 */

*,
:before,
:after {
	box-sizing: inherit;
	position: relative;
}
* {
	font-size: inherit;
	line-height: inherit;
}
:before,
:after {
	text-decoration: inherit;
	vertical-align: inherit;
}
/*
 * Opinionated defaults
 */

/* specify the border style and width of all elements */

*,
:before,
:after {
	border-style: solid;
	border-width: 0;
}
/* specify the core styles of all elements */

* {
	background-repeat: no-repeat;
	margin: 0;
	padding: 0;
	outline: none;
}
/* specify the root styles of the document */

:root {
	background-color: #FFF;
	box-sizing: border-box;
	cursor: default;
	/*text-rendering: optimizeLegibility;自動的にカーニングしてくれる的なプロパティ*/
}
/* specify the text decoration of anchors */

a {
	text-decoration: none;
}
/* specify the alignment of media elements */

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align: middle;
}
/* specify the background color of form elements */

button,
input,
select,
textarea {
	background-color: transparent;
	border: none;
}
/* specify the inherited color and font of form elements */

button,
input,
select,
textarea {
	color: inherit;
	font-family: inherit;
	font-style: inherit;
	font-weight: inherit;
}

/* specify the minimum height of form elements */

button, [type="button"], [type="date"], [type="datetime"], [type="datetime-local"], [type="email"], [type="month"], [type="number"], [type="password"], [type="reset"], [type="search"], [type="submit"], [type="tel"], [type="text"], [type="time"], [type="url"], [type="week"], select, textarea {
 min-height: 1.5em;
}

[role="button"] {
  cursor: pointer;
}

/* specify the font family of code elements */

code,
kbd,
pre,
samp {
	font-family: roboto, sans-serif;
}

/* specify the standard appearance of selects */

select {
	-moz-appearance: none;    /* Firefox 40+ */
	-webkit-appearance: none /* Chrome 45+ */
}
 select::-ms-expand {
 display: none;/* Edge 12+, Internet Explorer 11- */
}
 select::-ms-value {
 color: currentColor;/* Edge 12+, Internet Explorer 11- */
}
/* specify the border styling of tables */

table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* specify the resizability of textareas */

textarea {
	resize: vertical;
}


/* //////////////////////////////////////////////////////////////////
   Tips：ハイライト時の背景色と文字色の設定
   ////////////////////////////////////////////////////////////////// */
::-moz-selection {
 background-color: #D2FF4D; /* required when declaring ::selection */
 color: #4c2b03;
 text-shadow: none;
}
::selection {
	background-color: #D2FF4D; /* required when declaring ::selection */
	color: #4c2b03;
	text-shadow: none;
}

/* specify the progress cursor of updating elements */

[aria-busy="true"] {
 cursor: progress;
}

/* specify the pointer cursor of trigger elements */

[aria-controls] {
 cursor: pointer;
}

/* specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */

[aria-disabled] {
 cursor: default;
}

/* specify the style of visually hidden yet accessible elements */

[hidden][aria-hidden="false"] {
 clip: rect(0 0 0 0);
 display: inherit;
 position: absolute
}
[hidden][aria-hidden="false"]:focus {
	clip: auto;
}

/* ==============================================================
   #フォントの設定／Noto Sans Japanese
   //Noto Sans Japanese (japanese) http://www.google.com/fonts/earlyaccess//
   ============================================================== */ 
/*
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 100;
  src: url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.woff2) format('woff2'),
       url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.woff) format('woff'),
       url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Thin.otf) format('opentype');
}
*/
/*
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 200;
  src: url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff2) format('woff2'),
       url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.woff) format('woff'),
       url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Light.otf) format('opentype');
}
*/

/*@font-face {
 font-family: 'Noto Sans Japanese';
 font-style: normal;
 font-weight: 300;
 src: url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.woff2) format('woff2'),  url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.woff) format('woff'),  url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-DemiLight.otf) format('opentype');
}*/

/*@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 400;
	src: url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff2) format('woff2'),
	url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff) format('woff'),
	url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.otf) format('opentype');
}
*/

/*@font-face {
   font-family: 'Noto Sans Japanese';
   font-style: normal;
   font-weight: bold;
   src: url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff2) format('woff2'),
        url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.woff) format('woff'),
        url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Medium.otf) format('opentype');
 }*/

/*@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 600;
	src: url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff2) format('woff2'), url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.woff) format('woff'), url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Bold.otf) format('opentype');
}*/
/*
@font-face {
   font-family: 'Noto Sans Japanese';
   font-style: normal;
   font-weight: 900;
   src: url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.woff2) format('woff2'),
        url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.woff) format('woff'),
        url(http://fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Black.otf) format('opentype');
 }
 */

/* ==============================================================
   #基本設定
   ============================================================== */
html {
	color: #1D1F21;
	font-size: 14px;
	font-weight: normal;
	height: 100%;
	width: 100%;
	min-width: 320px;
}
 @media (min-width: 1024px) {
html {
	font-size: 14px;
}
}
body {
	font-family: "游ゴシック", "Yu Gothic", YuGothic, 'Noto Sans Japanese', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 1rem;
	line-height: 1.4;
	height: 100%;
	width: 100%;
	word-break: break-word;
}
hr {
	width: 100%;
	margin-top: 30px;
	margin-bottom: 30px;
	border: 0;
	border-top: transparent solid 1px;
	border-color: #E0E0E0;
}
hr.no {
	margin-top: 0;
	margin-bottom: 0;
}
/* ==============================================================
   #見出し
   ============================================================== */
h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: bold;
	line-height: 1.4;
	margin-top: 1rem;
	margin-bottom: 1rem;
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：.fw-h*は、任意のフォントサイズにしたい時に。
	//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */

h1,
.fw-h1 {
	font-size: 24px;
	font-size: 1.714285rem; /* 24px */
}
h2,
.fw-h2 {
	font-size: 24px;
	font-size: 1.714285rem; /* 24px */
}
h3,
.fw-h3 {
	font-size: 18px;
	font-size: 1.28571rem; /* 18px */
}
h4,
.fw-h4 {
	font-size: 16px;
	font-size: 1.14285rem; /* 16px */
}
h5,
.fw-h5 {
	font-size: 14px;
	font-size: 1rem; /* 14px */
}
h6,
.fw-h6 {
	font-size: 14px;
	font-size: 1rem; /* 14px */
}
@media (min-width: 960px) {
h1,
.fw-h1 {
	font-size: 36px;
	font-size: 2.25rem; /* 36px */
}
h2,
.fw-h2 {
	font-size: 32px;
	font-size: 2.286rem; /* 32px */
}
h3,
.fw-h3 {
	font-size: 24px;
	font-size: 1.5rem; /* 24px */
}
h4,
.fw-h4 {
	font-size: 18px;
	font-size: 1.28571rem; /* 18px */
}
h5,
.fw-h5 {
	font-size: 16px;
	font-size: 1rem; /* 16px */
}
h6,
.fw-h6 {
	font-size: 14px;
	font-size: 0.875rem; /* 14px */
}
}
/* ==============================================================
   #本文
   ============================================================== */

p {
	font-size: 13px;
	margin-top: 1rem;
	margin-bottom: 1rem;
	line-height: 1.6;
}
@media (min-width: 1200px) {
	p {
	font-size: 1rem;
	line-height: 1.8;
}
}

.line-through {
}

.small {
}
/* ==============================================================
   テキスト
   ============================================================== */
 /* 強調 */

strong {
	color: inherit;
	font-weight: bold;
}
/* 左寄せ */
.text-left {
	text-align: left;
}
/* 右寄せ */

.text-right {
	text-align: right;
}
/* センター寄せ */
.text-center {
	text-align: center;
}
/* ==============================================================
   #リンク
   ============================================================== */

a {
	color: inherit;
}
a:hover {
	color: #34d3c4;
}
a:active {
	text-decoration: underline;
}
a:focus {
}

/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：ページ内リンク時、サイトが固定ヘッダー場合は、ヘッダーの高さをmargin-top、padding-topに設定する
	//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
a.fw-anchor {
	margin-top: -100px;
	padding-top: 100px;
}

/* ==============================================================
   #リスト
   ============================================================== */
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：リストアイコンは基本非表示
	//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
ul,
ol {
	margin: 0;
	padding: 0;
	list-style: none;
}
ul li,
ol li {
	margin-bottom: 0.5em;
}
ul li:last-child,
ol li:last-child {
	margin-bottom: 0;
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：リストアイコンを表示させる場合は以下クラスを付ける
	//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
ul.fw-list,
ol.fw-list {
	list-style: none;
	padding-left: 0;
	display: table;
}
ul.fw-list li,
ol.fw-list li {
	padding-left: 1em;
	position: relative;
	display: table-row;
}
ol.fw-list li:before {
	content: counter(table-ol) ".";
	display: table-cell;
	width: 1em;
	height: 1em;
	text-align: right;
}
/* ==============================================================
   #画像
   ============================================================== */
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：固定サイズでない限り、画像には下記クラスを付けること
	//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */   
img.responsive {
	max-width: 100%;
	height: auto;
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：imgにdata属性"zoom"を設定すると、画像クリックで拡大表示できるように
	例）
	<img src="common/imgs/demo.jpg" data-action="zoom" class="responsive" />
	//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */   
img[data-action="zoom"] {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
}
.zoom-img,
.zoom-img-wrap {
  position: relative;
  z-index: 6666;
  -webkit-transition: all 300ms;
       -o-transition: all 300ms;
          transition: all 300ms;
}
img.zoom-img {
  cursor: pointer;
  cursor: -webkit-zoom-out;
  cursor: -moz-zoom-out;
}
.zoom-overlay {
  z-index: 420;
  background-color: rgba(255,255,255,0.6);
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  filter: "alpha(opacity=0)";
  opacity: 0;
  -webkit-transition:      opacity 300ms;
       -o-transition:      opacity 300ms;
          transition:      opacity 300ms;
}
.zoom-overlay-open .zoom-overlay {
  filter: "alpha(opacity=100)";
  opacity: 1;
}
.zoom-overlay-open,
.zoom-overlay-transitioning {
  cursor: default;
}


/* ==============================================================
   #バナー
   ============================================================== */
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：バナーを囲むリンク要素には、とりあえず下記クラスを付けとけば幸せになれる。
	例）
	<a class="fw-Banner-item">
		<img src="" />
	</a>
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */   
.fw-Banner-item {
	display: block;
	text-align: center;
	-webkit-transition: ease-out .2s;
	transition: ease-out .2s;
}
.fw-Banner-item:hover {
	opacity: 0.7;
}
.fw-Banner-item img {
	border-radius: 2px;
	overflow: hidden;
}

/* ==============================================================
   #テーブル
   ============================================================== */
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：レシポンシブ未対応。各プロジェクト毎に対応して下さい
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */      
table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}

theader {}
tbody {}
tfooter {}

td,
th {
	border: transparent solid 1px;
	border-color: #E0E0E0;
	padding: 10px;
	font-size: 0.875rem;
}


/* ==============================================================
   #レイアウト
   ============================================================== */
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：レイアウトの組み方は下記例を基本にする事
	例）
	<div clas="fw-container">＊コンテンツ幅の設定
		<div clas="fw-row">＊セルの並びを設定
			<div class="fw-col-70"></div>
			<div class="fw-col-30"></div>＊セルの合計値が100になるように
		</div>
	</div>
	//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */   

.fw-container-wrapper {
	width: 100%;
}
.fw-container {
	width: 100%;
	padding-right: 20px;
	padding-left: 20px;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
/*--- タブレット ---*/
@media (min-width: 768px) {
.fw-container {
}
}
/*--- タブレット ---*/
@media (min-width: 1024px) {
.fw-container {
	max-width: 960px;/*---サイト幅 960px ---*/
}
}
/*--- デスクトップ ---*/
@media (min-width: 1200px) {
.fw-container {
	max-width: 1040px;/*---サイト幅 1100px ---*/
}
}
/*---サイト幅 100% ---*/
.fw-container.full {
	width: 100%;
	max-width: 100%;
}

.fw-row.no-gutter {
}

.fw-row.no-gutter > [class*="fw-col-"] {
	padding-right: 0;
	padding-left: 0;
}

/* ==============================================================
   #カラム設定
   ============================================================== */
.fw-row {
	box-sizing: border-box;
	    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

	margin-right: -20px;
	margin-left: -20px;
}
/*--- セル横並び逆順 ---*/
.fw-row.reverse {
	-webkit-flex-direction: row-reverse;
	-ms-flex-direction: row-reverse;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
}
/*--- セル縦並び逆順 ---*/
.fw-col.reverse {
	-webkit-flex-direction: column-reverse;
	-ms-flex-direction: column-reverse;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	flex-direction: column-reverse;
}

/* //////////////////////////////////////////////////////////////////
   スマートフォン（横320px以上）
   ////////////////////////////////////////////////////////////////// */
 [class*="fw-col-"] {
 box-sizing: border-box;
     -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
 padding-right: 20px;
 padding-left: 20px;
}
/*.fw-col-100xx {
	-webkit-flex-grow: 1;
	-ms-flex-positive: 1;
	-webkit-box-flex: 1;
	flex-grow: 1;
	-ms-flex-preferred-size: 0;
	-webkit-flex-basis: 0;
	flex-basis: 0;
	max-width: 100%;
}*/
.fw-col-100 {
	-webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
	width: 100%;
    max-width: 100%;
}
.fw-col-90 {
	-ms-flex-preferred-size: 90%;
	-webkit-flex-basis: 90%;
	flex-basis: 90%;
	max-width: 90%;
}
.fw-col-83 {
	-ms-flex-preferred-size: 83.333%;
	-webkit-flex-basis: 83.333%;
	flex-basis: 83.333%;
	max-width: 83.333%;
}
.fw-col-80 {
	-ms-flex-preferred-size: 80%;
	-webkit-flex-basis: 80%;
	flex-basis: 80%;
	max-width: 80%;
}
.fw-col-75 {
	-ms-flex-preferred-size: 75%;
	-webkit-flex-basis: 75%;
	flex-basis: 75%;
	max-width: 75%;
}
.fw-col-70 {
	-ms-flex-preferred-size: 70%;
	-webkit-flex-basis: 70%;
	flex-basis: 70%;
	max-width: 70%;
}
.fw-col-66 {
	-ms-flex-preferred-size: 66.666%;
	-webkit-flex-basis: 66.666%;
	flex-basis: 66.666%;
	max-width: 66.666%;
}
.fw-col-60 {
	-ms-flex-preferred-size: 60%;
	-webkit-flex-basis: 60%;
	flex-basis: 60%;
	max-width: 60%;
}
.fw-col-50 {
	-ms-flex-preferred-size: 50%;
	-webkit-flex-basis: 50%;
	flex-basis: 50%;
	max-width: 50%;
}
.fw-col-40 {
	-ms-flex-preferred-size: 40%;
	-webkit-flex-basis: 40%;
	flex-basis: 40%;
	max-width: 40%;
}
.fw-col-33 {
	-ms-flex-preferred-size: 33.333%;
	-webkit-flex-basis: 33.333%;
	flex-basis: 33.333%;
	max-width: 33.333%;
}
.fw-col-30 {
	-ms-flex-preferred-size: 30%;
	-webkit-flex-basis: 30%;
	flex-basis: 30%;
	max-width: 30%;
}
.fw-col-25 {
	-ms-flex-preferred-size: 25%;
	-webkit-flex-basis: 25%;
	flex-basis: 25%;
	max-width: 25%;
}
.fw-col-20 {
	-ms-flex-preferred-size: 20%;
	-webkit-flex-basis: 20%;
	flex-basis: 20%;
	max-width: 20%;
}
.fw-col-16 {
	-ms-flex-preferred-size: 16.667%;
	-webkit-flex-basis: 16.667%;
	flex-basis: 16.667%;
	max-width: 16.667%;
}
.fw-col-10 {
	-ms-flex-preferred-size: 10%;
	-webkit-flex-basis: 10%;
	flex-basis: 10%;
	max-width: 10%;
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：.fw-rowに付けることで、セルの位置を調整できる
	例）
	<div clas="fw-row fw-center">＊セルを中央寄せにする
		<div class="fw-col-50"></div>
		<div class="fw-col-50"></div>
	</div>
	//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/*--- セル左寄せ ---*/
.fw-start {
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	-webkit-box-pack: start;
	justify-content: flex-start;
}
/*--- セル中央寄せ ---*/
.fw-center {
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	-webkit-box-pack: center;
	justify-content: center;
}
/*--- セル右寄せ ---*/
.fw-end {
	-webkit-justify-content: flex-end;
	-ms-flex-pack: end;
	-webkit-box-pack: end;
	justify-content: flex-end;
}
/*--- セル上付き ---*/
.fw-top {
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	-webkit-box-align: start;
	align-items: flex-start;
}
/*--- セル天地中央 ---*/
.fw-middle {
	-webkit-align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	align-items: center;
}
/*--- セル下付き ---*/
.fw-bottom {
	-webkit-align-items: flex-end;
	-ms-flex-align: end;
	-webkit-box-align: end;
	align-items: flex-end;
}
/*--- セル中央寄せの均等配置 ---*/
.fw-around {
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
}
/*--- セル横幅いっぱいの均等配置 ---*/
.fw-between {
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	justify-content: space-between;
}
.fw-first {
	-webkit-order: -1;
	-ms-flex-order: -1;
	-webkit-box-ordinal-group: 0;
	order: -1;
}
.fw-last {
	-webkit-order: 1;
	-ms-flex-order: 1;
	-webkit-box-ordinal-group: 2;
	order: 1;
}

/* //////////////////////////////////////////////////////////////////
   タブレット最小サイズ（横768px以上）
   ////////////////////////////////////////////////////////////////// */
 @media only screen and (min-width: 768px) {
 [class*="fw-col-"] {
 box-sizing: border-box;
     -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
 padding-right: 20px;
 padding-left: 20px;
}
.fw-col-100-sm {
	-webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
}
.fw-col-90-sm {
	-ms-flex-preferred-size: 90%;
	-webkit-flex-basis: 90%;
	flex-basis: 90%;
	max-width: 90%;
}
.fw-col-83-sm {
	-ms-flex-preferred-size: 83.333%;
	-webkit-flex-basis: 83.333%;
	flex-basis: 83.333%;
	max-width: 83.333%;
}
.fw-col-80-sm {
	-ms-flex-preferred-size: 80%;
	-webkit-flex-basis: 80%;
	flex-basis: 80%;
	max-width: 80%;
}
.fw-col-75-sm {
	-ms-flex-preferred-size: 75%;
	-webkit-flex-basis: 75%;
	flex-basis: 75%;
	max-width: 75%;
}
.fw-col-70-sm {
	-ms-flex-preferred-size: 70%;
	-webkit-flex-basis: 70%;
	flex-basis: 70%;
	max-width: 70%;
}
.fw-col-66-sm {
	-ms-flex-preferred-size: 66.666%;
	-webkit-flex-basis: 66.666%;
	flex-basis: 66.666%;
	max-width: 66.666%;
}
.fw-col-60-sm {
	-ms-flex-preferred-size: 60%;
	-webkit-flex-basis: 60%;
	flex-basis: 60%;
	max-width: 60%;
}
.fw-col-50-sm {
	-ms-flex-preferred-size: 50%;
	-webkit-flex-basis: 50%;
	flex-basis: 50%;
	max-width: 50%;
}
.fw-col-40-sm {
	-ms-flex-preferred-size: 40%;
	-webkit-flex-basis: 40%;
	flex-basis: 40%;
	max-width: 40%;
}
.fw-col-33-sm {
	-ms-flex-preferred-size: 33.333%;
	-webkit-flex-basis: 33.333%;
	flex-basis: 33.333%;
	max-width: 33.333%;
}
.fw-col-30-sm {
	-ms-flex-preferred-size: 30%;
	-webkit-flex-basis: 30%;
	flex-basis: 30%;
	max-width: 30%;
}
.fw-col-25-sm {
	-ms-flex-preferred-size: 25%;
	-webkit-flex-basis: 25%;
	flex-basis: 25%;
	max-width: 25%;
}
.fw-col-20-sm {
	-ms-flex-preferred-size: 20%;
	-webkit-flex-basis: 20%;
	flex-basis: 20%;
	max-width: 20%;
}
.fw-col-16-sm {
	-ms-flex-preferred-size: 16.667%;
	-webkit-flex-basis: 16.667%;
	flex-basis: 16.667%;
	max-width: 16.667%;
}
.fw-col-10-sm {
	-ms-flex-preferred-size: 10%;
	-webkit-flex-basis: 10%;
	flex-basis: 10%;
	max-width: 10%;
}
/*--- タブレット最小サイズの場合、非表示 ---*/
.fw-col-hidden-sm {
	display: none;
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：.fw-rowに付けることで、セルの位置を調整できる
	例）
	<div clas="fw-row fw-center">＊セルを中央寄せにする
		<div class="fw-col-50"></div>
		<div class="fw-col-50"></div>
	</div>
	//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/*--- セル左寄せ ---*/
.fw-start-sm {
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	-webkit-box-pack: start;
	justify-content: flex-start;
}
/*--- セル中央寄せ ---*/
.fw-center-sm {
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	-webkit-box-pack: center;
	justify-content: center;
}
/*--- セル右寄せ ---*/
.fw-end-sm {
	-webkit-justify-content: flex-end;
	-ms-flex-pack: end;
	-webkit-box-pack: end;
	justify-content: flex-end;
}
/*--- セル上付き ---*/
.fw-top-sm {
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	-webkit-box-align: start;
	align-items: flex-start;
}
/*--- セル天地中央 ---*/
.fw-middle-sm {
	-webkit-align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	align-items: center;
}
/*--- セル下付き ---*/
.fw-bottom-sm {
	-webkit-align-items: flex-end;
	-ms-flex-align: end;
	-webkit-box-align: end;
	align-items: flex-end;
}
/*--- セル中央寄せの均等配置 ---*/
.fw-around-sm {
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
}
/*--- セル横幅いっぱいの均等配置 ---*/
.fw-between-sm {
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	justify-content: space-between;
}
.fw-first-sm {
	-webkit-order: -1;
	-ms-flex-order: -1;
	-webkit-box-ordinal-group: 0;
	order: -1;
}
.fw-last-sm {
	-webkit-order: 1;
	-ms-flex-order: 1;
	-webkit-box-ordinal-group: 2;
	order: 1;
}
}
/* //////////////////////////////////////////////////////////////////
	タブレット（横1024px以上）
	////////////////////////////////////////////////////////////////// */
 @media only screen and (min-width: 1024px) {
 [class*="fw-col-"] {
 box-sizing: border-box;
     -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
 padding-right: 20px;
 padding-left: 20px;
}
.fw-col-100-md {
	-webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
}
.fw-col-90-md {
	-ms-flex-preferred-size: 90%;
	-webkit-flex-basis: 90%;
	flex-basis: 90%;
	max-width: 90%;
}
.fw-col-83-md {
	-ms-flex-preferred-size: 83.333%;
	-webkit-flex-basis: 83.333%;
	flex-basis: 83.333%;
	max-width: 83.333%;
}
.fw-col-80-md {
	-ms-flex-preferred-size: 80%;
	-webkit-flex-basis: 80%;
	flex-basis: 80%;
	max-width: 80%;
}
.fw-col-75-md {
	-ms-flex-preferred-size: 75%;
	-webkit-flex-basis: 75%;
	flex-basis: 75%;
	max-width: 75%;
}
.fw-col-70-md {
	-ms-flex-preferred-size: 70%;
	-webkit-flex-basis: 70%;
	flex-basis: 70%;
	max-width: 70%;
}
.fw-col-66-md {
	-ms-flex-preferred-size: 66.666%;
	-webkit-flex-basis: 66.666%;
	flex-basis: 66.666%;
	max-width: 66.666%;
}
.fw-col-60-md {
	-ms-flex-preferred-size: 60%;
	-webkit-flex-basis: 60%;
	flex-basis: 60%;
	max-width: 60%;
}
.fw-col-50-md {
	-ms-flex-preferred-size: 50%;
	-webkit-flex-basis: 50%;
	flex-basis: 50%;
	max-width: 50%;
}
.fw-col-40-md {
	-ms-flex-preferred-size: 40%;
	-webkit-flex-basis: 40%;
	flex-basis: 40%;
	max-width: 40%;
}
.fw-col-33-md {
	-ms-flex-preferred-size: 33.333%;
	-webkit-flex-basis: 33.333%;
	flex-basis: 33.333%;
	max-width: 33.333%;
}
.fw-col-30-md {
	-ms-flex-preferred-size: 30%;
	-webkit-flex-basis: 30%;
	flex-basis: 30%;
	max-width: 30%;
}
.fw-col-25-md {
	-ms-flex-preferred-size: 25%;
	-webkit-flex-basis: 25%;
	flex-basis: 25%;
	max-width: 25%;
}
.fw-col-20-md {
	-ms-flex-preferred-size: 20%;
	-webkit-flex-basis: 20%;
	flex-basis: 20%;
	max-width: 20%;
}
.fw-col-16-md {
	-ms-flex-preferred-size: 16.667%;
	-webkit-flex-basis: 16.667%;
	flex-basis: 16.667%;
	max-width: 16.667%;
}
.fw-col-10-md {
	-ms-flex-preferred-size: 10%;
	-webkit-flex-basis: 10%;
	flex-basis: 10%;
	max-width: 10%;
}
/*--- タブレットの場合、非表示 ---*/
.fw-col-hidden-md {
	display: none;
}
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：.fw-rowに付けることで、セルの位置を調整できる
	例）
	<div clas="fw-row fw-center">＊セルを中央寄せにする
		<div class="fw-col-50"></div>
		<div class="fw-col-50"></div>
	</div>
	//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/*--- セル左寄せ ---*/
.fw-start-md {
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	-webkit-box-pack: start;
	justify-content: flex-start;
}
/*--- セル中央寄せ ---*/
.fw-center-md {
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	-webkit-box-pack: center;
	justify-content: center;
}
/*--- セル右寄せ ---*/
.fw-end-md {
	-webkit-justify-content: flex-end;
	-ms-flex-pack: end;
	-webkit-box-pack: end;
	justify-content: flex-end;
}
/*--- セル上付き ---*/
.fw-top-md {
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	-webkit-box-align: start;
	align-items: flex-start;
}
/*--- セル天地中央 ---*/
.fw-middle-md {
	-webkit-align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	align-items: center;
}
/*--- セル下付き ---*/
.fw-bottom-md {
	-webkit-align-items: flex-end;
	-ms-flex-align: end;
	-webkit-box-align: end;
	align-items: flex-end;
}
/*--- セル中央寄せの均等配置 ---*/
.fw-around-md {
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
}
/*--- セル横幅いっぱいの均等配置 ---*/
.fw-between-md {
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	justify-content: space-between;
}
.fw-first-md {
	-webkit-order: -1;
	-ms-flex-order: -1;
	-webkit-box-ordinal-group: 0;
	order: -1;
}
.fw-last-md {
	-webkit-order: 1;
	-ms-flex-order: 1;
	-webkit-box-ordinal-group: 2;
	order: 1;
}
}
/* //////////////////////////////////////////////////////////////////
	デスクトップ（横1200px以上）
	////////////////////////////////////////////////////////////////// */
 @media only screen and (min-width: 1200px) {
 [class*="fw-col-"] {
 box-sizing: border-box;
     -webkit-box-flex: 1;
    -webkit-flex-grow: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
 padding-right: 20px;
 padding-left: 20px;
}
.fw-col-100-lg {
	-webkit-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    max-width: 100%;
}
.fw-col-90-lg {
	-ms-flex-preferred-size: 90%;
	-webkit-flex-basis: 90%;
	flex-basis: 90%;
	max-width: 90%;
}
.fw-col-83-lg {
	-ms-flex-preferred-size: 83.333%;
	-webkit-flex-basis: 83.333%;
	flex-basis: 83.333%;
	max-width: 83.333%;
}
.fw-col-80-lg {
	-ms-flex-preferred-size: 80%;
	-webkit-flex-basis: 80%;
	flex-basis: 80%;
	max-width: 80%;
}
.fw-col-75-lg {
	-ms-flex-preferred-size: 75%;
	-webkit-flex-basis: 75%;
	flex-basis: 75%;
	max-width: 75%;
}
.fw-col-70-lg {
	-ms-flex-preferred-size: 70%;
	-webkit-flex-basis: 70%;
	flex-basis: 70%;
	max-width: 70%;
}
.fw-col-66-lg {
	-ms-flex-preferred-size: 66.666%;
	-webkit-flex-basis: 66.666%;
	flex-basis: 66.666%;
	max-width: 66.666%;
}
.fw-col-60-lg {
	-ms-flex-preferred-size: 60%;
	-webkit-flex-basis: 60%;
	flex-basis: 60%;
	max-width: 60%;
}
.fw-col-50-lg {
	-ms-flex-preferred-size: 50%;
	-webkit-flex-basis: 50%;
	flex-basis: 50%;
	max-width: 50%;
}
.fw-col-40-lg {
	-ms-flex-preferred-size: 40%;
	-webkit-flex-basis: 40%;
	flex-basis: 40%;
	max-width: 40%;
}
.fw-col-33-lg {
	-ms-flex-preferred-size: 33.333%;
	-webkit-flex-basis: 33.333%;
	flex-basis: 33.333%;
	max-width: 33.333%;
}
.fw-col-30-lg {
	-ms-flex-preferred-size: 30%;
	-webkit-flex-basis: 30%;
	flex-basis: 30%;
	max-width: 30%;
}
.fw-col-25-lg {
	-ms-flex-preferred-size: 25%;
	-webkit-flex-basis: 25%;
	flex-basis: 25%;
	max-width: 25%;
}
.fw-col-20-lg {
	-ms-flex-preferred-size: 20%;
	-webkit-flex-basis: 20%;
	flex-basis: 20%;
	max-width: 20%;
}
.fw-col-16-lg {
	-ms-flex-preferred-size: 16.667%;
	-webkit-flex-basis: 16.667%;
	flex-basis: 16.667%;
	max-width: 16.667%;
}
.fw-col-10-lg {
	-ms-flex-preferred-size: 10%;
	-webkit-flex-basis: 10%;
	flex-basis: 10%;
	max-width: 10%;
}
/*--- デスクトップの場合、非表示 ---*/
.fw-col-hidden-lg {
	display: none;
}

/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：.fw-rowに付けることで、セルの位置を調整できる
	例）
	<div clas="fw-row fw-center">＊セルを中央寄せにする
		<div class="fw-col-50"></div>
		<div class="fw-col-50"></div>
	</div>
	//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/*--- セル左寄せ ---*/
.fw-start-lg {
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	-webkit-box-pack: start;
	justify-content: flex-start;
}
/*--- セル中央寄せ ---*/
.fw-center-lg {
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	-webkit-box-pack: center;
	justify-content: center;
	text-align: center;
}
/*--- セル右寄せ ---*/
.fw-end-lg {
	-webkit-justify-content: flex-end;
	-ms-flex-pack: end;
	-webkit-box-pack: end;
	justify-content: flex-end;
}
/*--- セル上付き ---*/
.fw-top-lg {
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	-webkit-box-align: start;
	align-items: flex-start;
}
/*--- セル天地中央 ---*/
.fw-middle-lg {
	-webkit-align-items: center;
	-ms-flex-align: center;
	-webkit-box-align: center;
	align-items: center;
}
/*--- セル下付き ---*/
.fw-bottom-lg {
	-webkit-align-items: flex-end;
	-ms-flex-align: end;
	-webkit-box-align: end;
	align-items: flex-end;
}
/*--- セル中央寄せの均等配置 ---*/
.fw-around-lg {
	-webkit-justify-content: space-around;
	-ms-flex-pack: distribute;
	justify-content: space-around;
}
/*--- セル横幅いっぱいの均等配置 ---*/
.fw-between-lg {
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	justify-content: space-between;
}
.fw-first-lg {
	-webkit-order: -1;
	-ms-flex-order: -1;
	-webkit-box-ordinal-group: 0;
	order: -1;
}
.fw-last-lg {
	-webkit-order: 1;
	-ms-flex-order: 1;
	-webkit-box-ordinal-group: 2;
	order: 1;
}
}

/* ==============================================================
   #ボタン
   ============================================================== */
/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：ボタンを複数並べる時は、.fw-btn-groupeで囲む
	例）
	<div clas="fw-btn-groupe">
		<a class="fw-btn">ボタンです</a>
		<a class="fw-btn">ボタンです</a>
	</div>
	//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
.fw-btn-groupe {
}

.fw-btn {
	display: inline-block;
	vertical-align: middle;
	background-color: #EB6D9A;
	border: transparent solid 2px;
	border-color: #EB6D9A;
	border-radius: 2px;
	font-weight: bold;
	font-size: 14px;
	color: #FFF;
	line-height: 20px;
	padding: 10px 15px;
	position: relative;
	cursor: pointer;
	overflow: hidden;
	-webkit-transition: 0.1s ease-out;
	transition: 0.1s ease-out;
}

.bg-green .fw-btn{
	background-color: #8DC21F;
	border-color: #8DC21F;
}

.bg-orange .fw-btn{
	background-color: #F3993A;
	border-color: #F3993A;
}


/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
	Tips：.fw-Btnの子要素に付けることで矢印のアイコンを表示させる
	例）
	<a class="fw-btn">
		<span class="fw-btn-arrow">ボタンです</span>
	</a>
	//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
.fw-btn-arrow {
	display: inline-block;
	vertical-align: middle;
	padding-right: 20px;
	position: relative;
}
.fw-btn-arrow:before,
.fw-btn-arrow:after {
	content: "";
	width: 8px;
	height: 8px;
	border-top: transparent solid 1px;
	border-right: transparent solid 1px;
	border-color: #FFF;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	-webkit-transform: rotate3d(0, 0, 1, 45deg);
	transform: rotate3d(0, 0, 1, 45deg);
	-webkit-transition: 0.25s ease-out;
	transition: 0.25s ease-out;
}
.fw-btn-arrow:before {
	border-color: #FFF;
	right: 20px;
	opacity: 0;
}
.fw-btn-arrow:after {
	right: 0;
	opacity: 1;
}
/* ホバーしたときの設定 */
.fw-btn:hover {
	background-color: transparent;
	border-color: #EB6D9A;
	color: #EB6D9A;
}

/*緑*/
.bg-green .fw-btn:hover {
	background-color: transparent;
	border-color: #8DC21F;
	color: #8DC21F;
}

/*オレンジ*/
.bg-orange .fw-btn:hover {
	background-color: transparent;
	border-color: #F3993A;
	color: #F3993A;
}

.fw-btn:hover .fw-Btn-arrow:before {
	border-color: #EB6D9A;
	right: 0;
	opacity: 1;
}
.fw-btn:hover .fw-Btn-arrow:after {
	border-color: #EB6D9A;
	right: -20px;
	opacity: 0;
}

.fw-close {
}

/* ==============================================================
   #スライダー基本設定
   ============================================================== */

.slick-slider {
	position: relative;
	display: block;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}
.slick-list {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
}
.slick-list:focus {
	outline: none;
}
.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.slick-track {
	position: relative;
	top: 0;
	left: 0;
	display: block;
}
.slick-track:before,
.slick-track:after {
	display: table;
	content: '';
}
.slick-track:after {
	clear: both;
}
.slick-loading .slick-track {
	visibility: hidden;
}
.slick-slide {
	display: none;
	float: left;
	height: 100%;
	min-height: 1px;
}
[dir='rtl'] .slick-slide {
	float: right;
}
.slick-slide img {
	display: block;
}
.slick-slide.slick-loading img {
	display: none;
}
.slick-slide.dragging img {
	pointer-events: none;
}
.slick-initialized .slick-slide {
	display: block;
}
.slick-loading .slick-slide {
	visibility: hidden;
}
.slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
	display: none;
}
.slick-arrow {
	background-color: transparent;
	border: 2px solid transparent;
	border-color: #000;
	border-radius: 2px;
	width: 60px;
	height: 60px;
	margin: auto;
	cursor: pointer;
	position: absolute;
	top: 0;
	bottom: 0;
	-webkit-transition: all ease-out .3s;
	transition: all ease-out .3s;
	z-index: 12;
}
/*.slick-arrow:after {
 content: "";
}

.slick-arrow.slick-prev:after {
}

.slick-arrow.slick-next:after {
}*/

/* ドット */

ul.slick-dots {
	width: auto;
	margin: 0;
	padding: 0;
	text-align: center;
	position: absolute;
	bottom: 10px;
	left: 50%;
	z-index: 12;
}
@media (min-width: 640px) {
ul.slick-dots {
	bottom: 20px;
}
}
.slick-dots li {
	/*background-color: #FFF;*/
	list-style: none;
	display: block;
	float: left;
	padding: 2px 8px;
	position: relative;
	bottom: 0;
	left: -50%;
}
.slick-dots li:first-child {
	border-radius: 50% 0 0 50%;
}
.slick-dots li:last-child {
	border-radius: 0 50% 50% 0;
}
.slick-dots li button {
	border: 0;
	background-color: #000;
	border: solid 4px #FFF;
	border-color: transparent;
	display: block;
	height: 12px;
	width: 12px;
	outline: none;
	line-height: 0;
	font-size: 0;
	color: transparent;
	padding: 0;
	cursor: pointer;
	outline: none;
	border-radius: 50%;
	transition: border ease-out 0.2s;
}
.slick-dots li.slick-active button {
	background-color: #e6223a;
	border: solid 2px #FFF;
	border-color: transparent;
}
.slide-item {
	overflow: hidden;
}
.slide-anime {
	background-color: #1D1F21;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10;
	-moz-animation: wave 1200ms linear 1 normal;
	-webkit-animation: wave 1200ms linear 1 normal;
	-o-animation: wave 1200ms linear 1 normal;
	-ms-animation: wave 1200ms linear 1 normal;
}
@media (min-width: 768px) {
.slide-anime {
}
}
 @-moz-keyframes wave {
 0% {
 opacity: 0;
 background-position: 0 5%;
}
 30% {
 opacity: 1;
}
 70% {
 opacity: 1;
}
 100% {
 opacity: 0;
 background-position: 0 0%;
}
}
@-webkit-keyframes wave {
 0% {
 opacity: 0;
 background-position: 0 5%;
}
 30% {
 opacity: 1;
}
 70% {
 opacity: 1;
}
 100% {
 opacity: 0;
 background-position: 0 0%;
}
}
@-o-keyframes wave {
 0% {
 opacity: 0;
 background-position: 0 5%;
}
 30% {
 opacity: 1;
}
 70% {
 opacity: 1;
}
 100% {
 opacity: 0;
 background-position: 0 0%;
}
}
@-ms-keyframes wave {
 0% {
 opacity: 0;
 background-position: 0 5%;
}
 30% {
 opacity: 1;
}
 70% {
 opacity: 1;
}
 100% {
 opacity: 0;
 background-position: 0 0%;
}
}

/* ==============================================================
   #ヘッダー
   ============================================================== */

.fw-header {
	background-color: #FFF;
	width: 100%;
	height: auto;
	position: relative;
	z-index: 999;
	-webkit-transform: translateZ(0);
}
@media (min-width: 1200px) {
.fw-header {
	height: auto;
}
}
/* ==============================================================
   #ヘッダーロゴ
   ============================================================== */

.fw-logo {
	width: 60px;
	height: 60px;
	padding: 5px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	-webkit-transition: 0.2s ease-out;
	-o-transition: 0.2s ease-out;
	transition: 0.2s ease-out;
}
 @media (min-width: 1200px) {
.fw-logo {
	width: 160px;
	height: 160px;
	padding: 20px;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
}
/* ==============================================================
   #パンくずリスト
   ============================================================== */
.fw-breadcrumb {
	display: none;
}
@media (min-width: 768px) {
.fw-breadcrumb {
	display: inherit;
}
}
.fw-breadcrumb ul {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
	overflow: hidden;
	list-style: none;
}
@media (min-width: 768px) {
.fw-breadcrumb ul {
	max-width: 1200px; /*---サイト幅 1200px ---*/
}
}
.fw-breadcrumb ul li {
	display: inline-block;
	vertical-align: middle;
	font-size: 0.75rem;
	line-height: 50px;
}
.fw-breadcrumb ul li + li {
	padding-left: 40px;
}
/* ==============================================================
   #ナビゲーション設定
   ============================================================== */
nav li {
	margin-bottom: 0;
}
.fw-navi {
	max-width: 1200px;
	margin: 0 auto;
}
.fw-navi > ul {
	height: 100%;
	list-style: none;
	display: -webkit-box; /*--- Androidブラウザ用 ---*/
	display: -ms-flexbox; /*--- IE10 ---*/
	display: -webkit-flex; /*--- safari（PC）用 ---*/
	display: flex;
	-webkit-flex-wrap: wrap; /*--- safari（PC）用 ---*/
	flex-wrap: wrap;
}
/*--- メニューセンター寄せ ---*/
.fw-navi > ul.fw-navi-center {
	-webkit-box-pack: center;/*--- Androidブラウザ用 ---*/
	-ms-flex-pack: center;/*--- IE10 ---*/
	-webkit-justify-content: center;/*--- safari（PC）用 ---*/
	justify-content: center;
}
/*--- メニュー右寄せ ---*/
.fw-navi > ul.fw-navi-right {
	-webkit-box-pack: flex-end;/*--- Androidブラウザ用 ---*/
	-ms-flex-pack: flex-end;/*--- IE10 ---*/
	-webkit-justify-content: flex-end;/*--- safari（PC）用 ---*/
	justify-content: flex-end;
}
/*--- メニュー等幅 ---*/
.fw-navi > ul.fw-navi-justify {
	-webkit-box-pack: justify;/*--- Androidブラウザ用 ---*/
	-ms-flex-pack: justify;/*--- IE10 ---*/
	-webkit-justify-content: space-around;/*--- safari（PC）用 ---*/
	justify-content: space-around;
}
.fw-navi > ul > li {
	text-align: center;
	white-space: nowrap;
	-ms-flex-flex-item-align: center;/*--- IE10 ---*/
	-webkit-align-self: center;/*--- safari（PC）用 ---*/
	align-self: center;
}
.fw-navi > ul > li > a {
	display: block;
}
/* ==============================================================
   #グローバルナビ
   ============================================================== */

#Navi-Area {
	height: 100%;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
}

.fw-Global-Navi {
	display: inherit;
	width: 100%;
	height: auto;
	position: relative;
	text-align: center;
}

.fw-Global-Navi > ul {
}
.fw-Global-Navi > ul > li {
	position: relative;
}
.fw-Global-Navi > ul > li > a {
	font-size: 0.875rem; /* 14px */
	font-weight: 600;
	line-height: 60px;
	padding-left: 1em;
	padding-right: 1em;
}
/* ==============================================================
   #ヘッダーナビ
   ============================================================== */

.fw-Header-navi {
	display: none;
}
 @media (min-width: 1200px) {
.fw-Header-navi {
	display: inherit;
	height: auto;
	position: relative;
}
}
.fw-Header-navi > ul > li {
	line-height: 24px;
}
.fw-Header-navi > ul > li > a {
	padding-left: 15px;
	padding-right: 15px;
	font-size: 0.75rem; /* 12px */
	position: relative;
}
.fw-Header-navi > ul > li:last-child > a {
	padding-right: 0;
}
.fw-Header-navi > ul > li > a:after {
	content: "";
	height: 16px;
	width: 0;
	border-left: #1D1F21 solid 1px;
	margin: auto;
	position: absolute;
	top: 0;
	right: -1px;
	bottom: 0;
	-webkit-transform: rotate3d(0, 0, 1, 24deg);
	-moz-transform: rotate3d(0, 0, 1, 24deg);
	-ms-transform: rotate3d(0, 0, 1, 24deg);
	-o-transform: rotate3d(0, 0, 1, 24deg);
	transform: rotate3d(0, 0, 1, 24deg);
}
.fw-Header-navi > ul > li:last-child > a:after {
	display: none;
}
/* ==============================================================
   #訪問者別ナビ
   ============================================================== */

#Visitor-Navi {
	width: 100%;
	height: auto;
	display: none;
}
#Visitor-Navi > ul {
}
#Visitor-Navi > ul > li {
	line-height: 50px;
}
#Visitor-Navi > ul > li > a {
	padding: 0 30px;
	font-size: 1.4rem;
}
/* ==============================================================
   #サイドナビゲーション
   ============================================================== */

#fw-Sub {
}
.fw-Reverse .fw-Side-navi {
	padding-left: 0;
	padding-right: 20px;
}
ul.fw-Side-Navi > li > a {
	display: block;
	font-size: 0.875rem; /* 14px */
	padding: 1em 0;
	border-bottom: rgba(0,0,0,.1) solid 1px;
}

/* ==============================================================
   #サイドバナーエリア
   ============================================================== */

ul.fw-Side-Banner {
	margin: -5px;
}
ul.fw-Side-Banner > li {
	padding: 5px;
}
 @media (min-width: 460px) {
ul.fw-Side-Banner > li {
	width: 50%;
	float: left;
}
}
 @media (min-width: 1200px) {
ul.fw-Side-Banner > li {
	width: 100%;
	float: none;
}
}
ul.fw-Side-Banner > li > a {
	display: block;
}
/* ==============================================================
   #スマホナビゲーション
   ============================================================== */


/* ==============================================================
   #フッター
   ============================================================== */

footer.fw-footer {
	background-color: #1D1F21;
	width: 100%;
	padding-bottom: 20px;
}
/* ==========================================================================
フッターナビゲーション
========================================================================== */

#Foota-navi {
	background-color: #FFF;
	width: 100%;
}
#Foota-navi > ul {
}
#Foota-navi > ul > li {
}
#Foota-navi > ul > li > a {
	padding: 10px 20px;
	font-size: 0.75rem;
}
/* ==========================================================================
フッターバナースライド
========================================================================== */

#Footer-Banner-area {
	width: 100%;
	text-align: center;
}
#Footer-Banner-slider {
	width: 100%;
	max-width: 1040px;
	margin: 0 auto;
	padding: 0 50px;
	overflow: inherit;
}
#Footer-Banner-slider .slick-arrow {
	background-color: transparent;
	border-width: 1px;
	border-color: #FFF;
	border-radius: 50%;
	height: 30px;
	width: 30px;
}
#Footer-Banner-slider .slick-arrow:hover {
	background-color: #FFF;
}
#Footer-Banner-slider .slick-arrow:after {
	content: "";
	border-width: 1px;
	border-color: #FFF;
	height: 6px;
	width: 6px;
}
#Footer-Banner-slider .slick-arrow:hover:after {
	border-color: #1D1F21;
}
#Footer-Banner-slider .slick-arrow.slick-prev:after {
	left: 2px;
}
#Footer-Banner-slider .slick-arrow.slick-next:after {
	right: 2px;
}
#Footer-Banner-slider .slick-prev {
	left: 10px;
}
#Footer-Banner-slider .slick-next {
	right: 10px;
}
#Footer-Banner-slider .slide-item {
	background-color: transparent;
	border-radius: 4px;
	padding: 5px;
}
#Footer-Banner-slider .slide-item:hover {
	background-color: transparent;
}
/* ==========================================================================
コピーライト
========================================================================== */

.fw-copyright {
	display: block;
	text-align: center;
	color: #FFF;
	font-size: 11px;
	margin-top: 20px;
}
/* ==============================================================
   #サイドバー
   ============================================================== */

.fw-return-top {
	position: fixed;
	margin: auto;
	right: 20px;
	bottom: 20px;
	z-index: 300;
}
.fw-return-top a {
	display: block;
	background-color: #FFF;
	border: transparent solid 1px;
	border-color: #000;
	border-radius: 50%;
	width: 64px;
	height: 64px;
}

.fw-return-top {
	display: none;
}
@media (min-width: 1200px) {
.fw-return-top {
	display: block;
}
}
.fw-return-top .icon-switch {
	width: 60px;
	height: 60px;
}
.fw-return-top .icon-switch.arrow::before {
	content: "";
	display: block;
	background-color: transparent;
	border-top: #393838 solid 2px;
	border-right: #393838 solid 2px;
	width: 16px;
	height: 16px;
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.fw-return-top .icon-switch.arrow::after {
	content: "";
	background-color: #393838;
	width: 2px;
	height: 20px;
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
/* ==============================================================
   #モーダルウィンドウ：基本設定
   ============================================================== */
/* Hide scroll bar */

html.remodal-is-locked {
	 overflow: hidden;
	-ms-touch-action: none;
	touch-action: none;
}
/* Anti FOUC */
.remodal, [data-remodal-id] {
 display: none;
}
/* Necessary styles of the overlay */
.remodal-overlay {
	position: fixed;
	z-index: 10000;
	top: -5000px;
	right: -5000px;
	bottom: -5000px;
	left: -5000px;
	display: none;
}
/* Necessary styles of the wrapper */
.remodal-wrapper {
	position: fixed;
	z-index: 10001;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: none;
	overflow: auto;
	text-align: center;
	-webkit-overflow-scrolling: touch;
}
.remodal-wrapper:after {
	display: inline-block;
	height: 100%;
	margin-left: -0.05em;
	content: "";
}
/* Fix iPad, iPhone glitches */

/*.remodal-overlay,
.remodal-wrapper {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}*/

/* Necessary styles of the modal dialog */
.remodal {
	position: relative;
	outline: none;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
}
.remodal-is-initialized {
	/* Disable Anti-FOUC */
	display: inline-block;
}
/* ==============================================================
   #ディスプレイ毎に隠す
   ============================================================== */
/* スマホのみ隠す */
@media (max-width: 767px) {
.fw-hidden-Sp {
	display: none;
	visibility: hidden;
}
}
/* タブレットのみ隠す */
@media (min-width: 768px) and (max-width: 1199px) {
.fw-hidden-Tablet {
	display: none;
	visibility: hidden;
}
}
/* デスクトップのみ隠す */
@media (min-width: 1200px) {
.fw-hidden-Pc {
	display: none;
	visibility: hidden;
}
}
/* ==============================================================
   #クリアフィックス
   ============================================================== */

.cf:before,
.cf:after {
	content: " ";
	display: table;
}
.cf:after {
	clear: both;
}
.cf {
 *zoom: 1;
}
/* ==============================================================
   #ブログ関係
   ============================================================== */
   
/* ==============================================================
   #ブログフィード
   ============================================================== */
.fw-post {
	/*border-bottom: transparent solid 1px;
	border-color: #E8E8E8;*/
	padding-top: 1rem;
	padding-bottom: 1rem;
}
.fw-post > a {
	display: block;
	position: relative;
}
/* 新着記事アイコン */
.fw-post-new {
	background-color: #FF2C4F;
	border: transparent solid 4px;
	border-color: transparent;
	border-radius: 50%;
	display: block;
	font-size: 11px;
	font-style: normal;
	color: #FFF;
	line-height: 40px;
	text-align: center;
	width: 48px;
	height: 48px;
	position: absolute;
	top: -12px;
	left: -12px;
}
/* サムネイル */
.fw-post-img {
	position: relative;
	overflow: hidden;
	-webkit-transition: ease-out 500ms;
	transition: ease-out 500ms;
}
/* マウスホーバー時アニメーション */
.fw-post-img img {
	background-size: cover;
	background-position: center;
	-webkit-transform: scale3d(1.05, 1.05, 1);
	transform: scale3d(1.05, 1.05, 1);
	-webkit-transition: ease-out 300ms;
	transition: ease-out 300ms;
	-webkit-backface-visibility: hidden;
}
.fw-post:hover .fw-post-img img {
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
}


/* マウスホーバー時オーバーレイ */
.fw-post-overlay {
	background-color: rgba(0,0,0,0.5);
	text-align: center;
	width: 100%;
	height: 100%;
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	opacity: 0;
	-webkit-transition: ease-out 300ms;
	transition: ease-out 300ms;
}
.fw-post:hover .fw-post-overlay {
	opacity: 1;
}
/* フィード記事テキストエリア */
.fw-post-text {
	overflow: hidden;
}
/* フィード記事タイトル */
.fw-post-title {
	font-size: 0.875rem;
	font-weight: normal;
	line-height: 1.4;
	margin-top: 0;
}
/* フィード記事抜粋 */
.fw-post-excerpt {
	font-size: 0.75rem;
	line-height: 1.4;
}
/* 日時 */
.fw-post-deta {
	display: block;
	font-size: 0.75rem;
	font-weight: normal;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	margin-bottom: 0.5em;
}
/* カテゴリー */
.fw-post-deta i {
	background-color: transparent;
	font-style: normal;
}
.fw-post.Horizontal {
}
/* サムネイル */
.fw-post.Horizontal .fw-post-img {
	width: 30%;
	float: left;
	margin-right: 20px;
}
.fw-post.Horizontal .fw-post-deta {
	margin-top: 0;
}

/* ==============================================================
   #タグクラウド
   ============================================================== */
.fw-tag-list {
	margin: -2px;
}
.fw-tag-list li {
	float: left;
	padding: 2px;
}
.fw-tag-list li a {
	background-color: transparent;
	border: transparent solid 1px;
	border-color: #E4E4E4;
	border-radius: 1px;
	display: inline-block;
	font-size: 11px;
	padding: 0.5em 1em;
	-webkit-transition: 0.1s ease-out;
	transition: 0.1s ease-out;
}
.fw-tag-list li a:hover {
	border-color: #34d3c4;
	color: #34d3c4;
}



#Global-Navi .accordion-switch.on {
	background-color: rgba(84,194,241,0.15);
}


@media (min-width: 1200px) {
#Global-Navi .accordion > li {
    border-bottom: none;
}	
#Global-Navi .accordion > li > span,
#Global-Navi .accordion > li > a > span {
	color: inherit;
}
#Global-Navi .accordion > li:hover > span,
#Global-Navi .accordion > li:hover > a > span {
	color: inherit;
}
#Global-Navi .accordion > li > .accordion-item li:first-child {
	border-radius: 6px 6px 0 0;
}

#Global-Navi .accordion > li > .accordion-item li:last-child {
	border-radius: 0 0 6px 6px;
}

#Global-Navi .accordion .accordion-item a {
	font-size: 0.85rem;
	padding: 0;
    line-height: 50px;
}
#Global-Navi .icon-switch {

}
}
/* ==============================================================
   #アコーディオン
   ============================================================== */
.accordion {
}
.accordion a {
	display: block;
}
.accordion > li,
.accordion > li > a {
	cursor: pointer;
	font-weight: bold;
	line-height: 60px;
}
@media (min-width: 1200px) {
.accordion > li {
	text-align: center;
	/*width: 16.6666%;*/
}
}

.accordion > li > span,
.accordion > li > a > span {
	display: block;
	padding: 0 15px;
	position: relative;
	z-index: 60;
}
.accordion-switch + .accordion-item {
	margin: 0;
	padding: 0;
	height: 0;
	min-width: 100%;
	visibility: hidden;
	-webkit-transition: transform 400ms;
	transition: transform 400ms;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	z-index: 50;
}
.accordion-switch.on + .accordion-item {
	height: auto;
	visibility: visible;
}
.accordion-switch + .accordion-item li {
	background-color: #FFF;
	min-width: 220px;
	overflow: hidden;
}
.accordion .accordion-item a {
	font-weight: normal;
	font-size: 1rem;
	line-height: 1.4;
	text-align: left;
	padding: 15px;
	position: relative;
}
.accordion .accordion-item a:hover {
	background-color: #E6E7E6;
}
.accordion .accordion-item a span {
	display: block;
	padding-left: 1em;
}
.accordion-switch + .accordion-item span {
	opacity: 0;
}
.accordion-switch.on + .accordion-item span {
	opacity: 1;
}
@media (min-width: 1200px) {
.accordion-switch + .accordion-item {
	padding: 68px 0 0; /* 親要素の高さ分を入れる */
	height: 68px; /* 親要素の高さ分を入れる */
	position: absolute;
	top: 0;
	left: 0;
}
.accordion .accordion-item a:hover {
	color: #EB6D9A;
}

}

.icon-switch {
	background-color:;
	width: 50px;
	height: 50px;
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
}
.accordion-item .icon-switch {
	right: -15px;
}
.icon-switch::before,
.icon-switch::after {
	content: "";
	display: block;
	background-color: #292828;
	margin: auto;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	-webkit-transition: opacity 100ms;
	transition: opacity 100ms;
}
.icon-switch::before {
	width: 1px;
	height: 13px;
}
.icon-switch::after {
	width: 13px;
	height: 1px;
}
.icon-switch.open {
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	-webkit-animation-name: switch-Open;
	animation-name: switch-Open;
	-webkit-animation-duration: 300ms;
	animation-duration: 300ms;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}
.icon-switch.close {
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	-webkit-animation-name: switch-Close;
	animation-name: switch-Close;
	-webkit-animation-duration: 300ms;
	animation-duration: 300ms;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}
.icon-switch.close::after {
	opacity: 0;
}
.icon-switch.arrow::before {
	content: "";
	display: block;
	background-color: transparent;
	border-top: #292828 solid 2px;
	border-right: #292828 solid 2px;
	width: 8px;
	height: 8px;
	margin: auto;
	position: absolute;
	top: 0;
	right: 15px;
	bottom: 0;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.icon-switch.arrow::after {
	display: none;
}

@-webkit-keyframes switch-Open {
 from {
 -webkit-transform: rotate(90deg);
 transform: rotate(90deg);
}
to {
	-webkit-transform: rotate(0);
	transform: rotate(0);
}
}
@keyframes switch-Open {
 from {
 -webkit-transform: rotate(90deg);
 transform: rotate(90deg);
}
to {
	-webkit-transform: rotate(0);
	transform: rotate(0);
}
}
@-webkit-keyframes switch-Close {
 from {
 -webkit-transform: rotate(0deg);
 transform: rotate(0deg);
}
to {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
}
@keyframes switch-Close {
 from {
 -webkit-transform: rotate(0deg);
 transform: rotate(0deg);
}
to {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}
}
/* ==============================================================
   #アコーディオン＆ドロップダウン
   ============================================================== */
@media (min-width: 1200px) {
.drop-down > li:hover .accordion-item {
	height: auto;
	opacity: 1;
	visibility: visible;
}
.drop-down > li:hover .accordion-item span {
	opacity: 1;
}

#Global-Navi > ul > li > a > span {
	padding: 0!important;
}

}
