﻿@charset "UTF-8";

/* !HTML5 elements
---------------------------------------------------------- */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section
{ display: block;}

/* !Reseting
---------------------------------------------------------- */
body {
	font-family:"メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	-webkit-text-size-adjust: none;
	font-size: 16px;
	color: #000;
	line-height:1.8em;
	word-wrap:break-word;/* 英数字折り返し */
}
body, div, pre, p, blockquote, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, th, td, figure, figcaption
{ margin: 0; padding: 0;}
input, textarea
{ margin: 0; font-size: 100%;}
label
{ cursor: pointer;}
table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}
fieldset, img
{ border: 0;}
img
{ max-width: 100%; width: 100%; height: auto; vertical-align: top;}
address, caption, cite, code, dfn, em, th, var
{ font-style: normal; font-weight: normal;}
ol, ul
{ list-style: none;}
caption, th
{ text-align: left;}
h1, h2, h3, h4, h5, h6
{ font-size: 100%; font-weight: normal;}
q:after, q:before
{ content:'';}
a, input
{ outline: none; }
input, textarea
{ border-radius: 0; font-family:"メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
input[type="button"],input[type="submit"]
{ -webkit-appearance: none; background: none; border: none; padding: 0; cursor: pointer;}
abbr, acronym
{ border: 0;}
*
{ -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box;}
/* !Clearfix
---------------------------------------------------------- */
.clearfix,
#header,
#contents,
section,
.box_layout01,
.box_column01,
.list_inline01
{
	display: block;
	min-height: 1%;
}
.clearfix:after,
#header:after,
#contents:after,
section:after,
.box_layout01:after,
.box_column01:after,
.list_inline01:after
{
	clear: both;
	content:".";
	display: block;
	height: 0;
	visibility: hidden;
}

/* !contents
---------------------------------------------------------- */
html { overflow-y: scroll;}
@media print {
	html,
	html body { *zoom: 0.65;}
}

.Clear {
   clear: both;
}

a {
   color: #999;
   text-decoration: none;
}

a:hover {
   color: #000;
   text-decoration: none;
}


.brand a {
  position: relative;
  overflow: hidden;
  float: left;
}
.brand a img{
  vertical-align: bottom;
    opacity: 1; 
    transition: 0.3s;
}
.brand a:hover img{
  opacity: .5;
}
.brand a:after {
  position: absolute;
  z-index: 9999;
  content: "";
  top: 50%;
  left: 50%;
  width: 0%;
  height: 0%;
  transition: 0.2s;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.brand a:hover:after {
  top: 0%;
  left: 0%;
  width: 100%;
  height: 100%;
  border: 10px solid rgba(0,0,0,.3);
}




.row {
   width: 94%;
   margin: 0 auto;
}
.contents {
   margin: 0 auto;
   max-width: 1200px;
   text-align: left;
   position: relative;
}

/* !汎用コンテンツ
---------------------------------------------------------- */
body{
    background: #fffdf6;
    text-align:center;
}

header {
   position: relative;
   min-height: 600px;
   width: 100%;
   background-size: cover !important;
   -webkit-background-size: cover !important;
   overflow: hidden;
   background-repeat: no-repeat;
}

#Container {
   background: #fffdf6;
   z-index: 10;
   position: relative;
}

#Logo {
	width: 140px;
	margin-top: 10px;
	margin-right: 20px;
	margin-left: 30px;
	margin-bottom: 10px;
}


/*---ナビゲーション---*/
#Navi_Wrap {
	height: 90px;
	position: fixed;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
	background-color: rgba(55,16,31,0.76);
	transition: 0.3s;
}

#Navi_Text_Wrap {
	position: fixed;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
}

#Navi_Text ul li {
	display:table-cell;
	text-align:center;
	vertical-align: middle;
	color:#FFF;
}

#Navi_Text ul li a {
	font-size:16px;
	color:#FFF;
	text-decoration:none;
	padding:2px 20px;
	position: relative;
	display: inline-block;
	transition: .3s;
}

#Navi_Text ul li a::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	content: '';
	width: 0;
	height: 2px;
	background-color: #FFF;
	transition: .3s;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
#Navi_Text ul li a:hover::after {
	width: 80%;
}

/*---キャッチコピー---*/
#Message { 
    position: relative;
    width: 90%; 
    max-width: 1200px;
    z-index: 0;
    top: 120px;
}

.Kodawari_title { color: #FFF; font-size: 32px; text-align-last: left; padding-left: 16px; }
.Kodawari_txt { color: #FFF; font-size: 16px; line-height:1.8em; text-align-last: left; padding-left: 16px; }


/*---角丸---*/
.border_radius {
   border-radius: 5px;
   -webkit-border-radius: 5px;
   -moz-border-radius: 5px;
}

/*---見だし---*/
h2 {
   font-size: 28px;
   font-family: 'Montserrat Alternates', sans-serif;
}

/*---Font Awsome---*/
.icon1:before {
  font-family: "Font Awesome 5 Free";
  content: "\f35a";
  padding-left: 20px;
  padding-right: 5px;
  color: gray; /*アイコン色*/
}

/*---お知らせ---*/
.boxinfo {
	position: relative;
	border: solid 1px #9C9C9C;
	color: #333333;
	padding: 10px;
}
.boxinfo .box-title {
    position: absolute;
    display: inline-block;
    top: -27px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    color: #9C9C9C;
}
.boxinfo p {
    margin: 0; 
    padding: 0;
    text-align: left;
}


/* !Box
----------------------------------------------------------- */
/*---通常---*/
.box_column01 {
	margin: -16px 0 0 0;
}
	.box_column01 .col {
		float: left;
	}
	.box_column01.col2 .col {
		margin: 16px 2.2% 0 0;
		width: 48.9%;
	}
	.box_column01.col3 .col {
		margin: 16px 2.2% 0 0;
		width: 31.85%;
	}
	.box_column01.col4 .col {
		margin: 16px 2.2% 0 0;
		width: 23.35%;
	}
	.box_column01.col2 .col:nth-child(2n),
	.box_column01.col3 .col:nth-child(3n),
	.box_column01.col4 .col:nth-child(4n){
		margin-right: 0;
	}
	.box_column01.col2 .col:nth-child(2n+1),
	.box_column01.col3 .col:nth-child(3n+1),
	.box_column01.col4 .col:nth-child(4n+1) {
		clear: both;
	}
	.box_column01 a {
	}
	.box_column01 figure {
	}

@media screen and (max-width:599px){
.box_column01  {
	margin: 0;
}
	.box_column01 .col,
	.box_column01.col2 .col,
	.box_column01.col3 .col,
	.box_column01.col4 .col {
		float: none;
		width: auto;
		margin: 0;
		padding: 10px 0;
	}
	.box_column01 figure {
		float: left;
		margin-right: 10px;
		margin-bottom: 10px;
		width: 100%;
	}
}

/* !Box2
----------------------------------------------------------- */
/*---通常---*/
.box_column02 {
	margin: -16px 0 0 0;
}
	.box_column02 .col {
		float: left;
	}
	.box_column02.col2 .col {
		margin: 16px 2.2% 0 0;
		width: 48.9%;
	}
	.box_column02.col3 .col {
		margin: 16px 2.2% 0 0;
		width: 31.85%;
	}
	.box_column02.col4 .col {
		margin: 16px 2.2% 0 0;
		width: 23.35%;
	}
	.box_column02.col5 .col {
	margin: 24px 2.2% 0 0;
	width: 18.24%;
	padding: 5px;
	text-align: left;  
	}
	.box_column02.col6 .col {
		margin: 16px 2.2% 0 0;
		width: 14.83%;
		border: 1px solid #CCC;
		padding: 10px;
	}
	.box_column02.col2 .col:nth-child(2n),
	.box_column02.col3 .col:nth-child(3n),
	.box_column02.col4 .col:nth-child(4n),
	.box_column02.col5 .col:nth-child(5n),
	.box_column02.col6 .col:nth-child(6n) {
		margin-right: 0;
	}
	.box_column02.col2 .col:nth-child(2n+1),
	.box_column02.col3 .col:nth-child(3n+1),
	.box_column02.col4 .col:nth-child(4n+1),
	.box_column02.col5 .col:nth-child(5n+1),
	.box_column02.col6 .col:nth-child(6n+1) {
		clear: both;
	}
	.box_column02 a {
	}
	.box_column02 figure {
	}

@media screen and (max-width:599px){
.box_column02  {
	margin: 0;
}
	.box_column02 .col,
	.box_column02.col2 .col,
	.box_column02.col3 .col,
	.box_column02.col4 .col,
	.box_column02.col5 .col {
		margin: 10px 2.2% 0 0;
		width: 47.8%;
	}
	.box_column02.col6 .col {
		margin: 10px 2.2% 0 0;
		width: 47.8%;
	}
	.box_column02 figure {
		float: left;
		width: 100px;
		margin-right: 10px;
		margin-bottom: 10px;
		width: 100%;
	}
}

/* --------------------------------------
added by Fukuoka 2022-06-30
-------------------------------------- */
.box_column02.flex {
	display: flex;
	flex-wrap: wrap;
	margin-right: -25px;
}

.box_column02.flex .col {
	float: none;
	width: calc(calc(100% - 125px) / 5);
	margin: 10px 25px 10px 0;
}

@media screen and (max-width: 767px) {
	.box_column02.flex {
		margin-right: -10px;
	}
	.box_column02.flex .col {
		float: none;
		width: calc(calc(100% - 30px) / 3);
		margin: 10px 10px 10px 0;
	}
}

@media screen and (max-width: 567px) {
	.box_column02.flex {
		margin-right: -10px;
	}
	.box_column02.flex .col {
		float: none;
		width: calc(calc(100% - 30px) / 2);
		margin: 10px 10px 10px 0;
	}
}

/*---2カラム（リキッド）---*/
.Liquid_box {
   display: table;
   margin: 0px;
   padding: 0px;
   width: 100%;
}

.Liquid_box .box_40 {
   display: table-cell;
   width: 39%;
}

.Liquid_box .box_60 {
   display: table-cell;
   width: 59%;
}

.Liquid_box .box_margin {
   display: table-cell;
   width: 2%;
}

@media screen and (max-width: 599px) {
   .Liquid_box {
      display: block;
   }
   .Liquid_box .box_40 {
      display: block;
      width: 100%;
      margin-bottom:10px;
   }
   .Liquid_box .box_60 {
      display: block;
      width: 100%;
      margin-bottom:10px;
   }
   .Liquid_box .box_margin {
      display: none;
   }
}

/*---アイコン用---*/
    .Icon_box {
        margin: -16px 0 0 0;
    }
	.Icon_box .col {
		float: left;
	}
	.Icon_box.col2 .col {
		margin: 16px 2.2% 0 0;
		width: 48.9%;
	}
	.Icon_box.col3 .col {
		margin: 16px 2.2% 0 0;
		width: 31.85%;
	}
	.Icon_box.col4 .col {
		margin: 16px 2.2% 0 0;
		width: 23.35%;
	}
	.Icon_box.col5 .col {
		margin: 16px 2.2% 0 0;
		width: 18.24%;
	}
	.Icon_box.col6 .col {
		margin: 16px 2.2% 0 0;
		width: 14.83%;
	}
	.Icon_box.col2 .col:nth-child(2n),
	.Icon_box.col3 .col:nth-child(3n),
	.Icon_box.col4 .col:nth-child(4n),
	.Icon_box.col5 .col:nth-child(5n),
	.Icon_box.col6 .col:nth-child(6n) {
		margin-right: 0;
	}
	.Icon_box.col2 .col:nth-child(2n+1),
	.Icon_box.col3 .col:nth-child(3n+1),
	.Icon_box.col4 .col:nth-child(4n+1),
	.Icon_box.col5 .col:nth-child(5n+1),
	.Icon_box.col6 .col:nth-child(6n+1) {
		clear: both;
	}
	.Icon_box a {
	}
	.Icon_box figure {
	}

/* !Table
---------------------------------------------------------- */
/*---テーブル（基本）---*/
.table_basic01 {
	width: 100%;
	border-collapse: separate;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
.table_basic01 th,
.table_basic01 td {
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	padding: 10px;
}
.table_basic01 th {
	background-color: #f0f0f0;
	vertical-align: top;
}
@media screen and (max-width:599px){
	.table_basic01 {
		width: 100%;
	}
	.table_basic01,
	.table_basic01 thead,
	.table_basic01 tbody,
	.table_basic01 tr,
	.table_basic01 th,
	.table_basic01 td {
		width: 100%;
		display: block;
	}
	.table_basic01 th,
	.table_basic01 td {
		border-top: none;
		border-left: none;
	}
}

/*---テーブル（枠なし）---*/
.table_basic02 {
	width: 100%;
	border: none;
}
.table_basic02 th {
	vertical-align: top;
	border: none;
	padding: 6px;
    font-size: 14px;
}
.table_basic02 td {
	border: none;
	padding: 6px;
    font-size: 12px;
    color: #545454;
    text-align: right;
}
@media screen and (max-width:599px) {
        .table_basic02 {
            width: 100%;
        }
        .table_basic02, 
        .table_basic02 thead, 
        .table_basic02 tbody, 
        .table_basic02 tr{
            border-bottom: 1px solid #ccc;
        }
        .table_basic02 th, 
        .table_basic02 td {
            width: 100%;
            display: block;
            border: none;
        }
        .table_basic02 th, 
        .table_basic02 td {
            border: none;
        }
    }


/*---Products---*/
#PdBar {
   width:100%;
   background: #5f88a9;
   padding: 40px 0 40px;
}

#PdBar p {
   width:100%;
   padding: 20px 0;
   color: #FFFFFF;
}

/*---ボタンmore---*/
.button {
	display: inline-block;
	position: relative;
	z-index: 2;
	width: 300px;
	padding: 4px;
	text-decoration: none;
	background: #7d1256;
	color: #FFF;
	overflow: hidden;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
}

.button::before,
.button::after {
	position: absolute;
	z-index: -1;
	display: block;
	content: '';
}
.button,
.button::before,
.button::after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: all .3s;
	transition: all .3s;
}

.button:hover {
	background: #420a2e;
	color: #FFF;
}

/* !Footer
---------------------------------------------------------- */
/*---ページの先頭へ---*/
#back-top {
	position:fixed;
	right:20px;
	bottom:20px;
	z-index: 100;
}

#back-top a {
	width: 60px;
	height: 60px;
	display: block;
	background: url(../img/pagetop.png) no-repeat left top;
	text-indent:-9999px;
	z-index: 5;
}

#back-top a:hover {
	background: url(../img/pagetop.png) no-repeat left -60px;
	z-index: 5;
}

#Footer_Wrap {
   color: #393939;
   padding-bottom: 40px;
}

#Footer_Wrap2 {
   color: #fff;
   background: #3c2837;
   padding-top: 1px;
   padding-bottom: 40px;
}

footer {
   padding-top: 60px;
}

#Footer_Logo {
   width: 260px;
}

#Icon_Logo {
	width: 40px;
	padding-top: 10px;
	padding-right: 10px;
}

.btn_footer_wrap {
	text-align: center;
}

.btn_footer {
	display: inline-block;
	padding: 5px 10px;
	border: 1px solid #FFF;
	color: #FFF;
	transition: background .5s;
}

.btn_footer:hover {
	background-color: #FFF;
	color: #3c2837;
}



/* !Fonts -------------------------------------------------------------- */
.ff { font-family: serif;}
.ffNotoSans { font-family: "Noto Sans Japanese";}
.ffMplus1p { font-family: "Mplus 1p";}
.ffWorkSans { font-family: 'Work Sans', sans-serif;}
.ffMontserratAlternates { font-family: 'Montserrat Alternates', sans-serif;}
.ffCaveat { font-family: 'Caveat', cursive;}
.fwB { font-weight: bold;}
.fcWhite { color: #FFF;}
.fcGray { color: #CCCCCC;}
.fcRed { color: #FF0000;}
.fz12 { font-size: 12px;}
.fz14 { font-size: 14px;}
.fz16 { font-size: 16px;}
.fz26 { font-size: 26px;}
.fz34 { font-size: 34px;}
.fz60 { font-size: 60px;}
.font_space {letter-spacing: 0.15em}


/* !Margin ------------------------------------------------------------------ */
.mt10 { margin-top:10px !important;}
.mt20 { margin-top:20px !important;}
.mt30 { margin-top:30px !important;}
.mt40 { margin-top:40px !important;}
.mt50 { margin-top:50px !important;}
.mt60 { margin-top:60px !important;}
.mt80 { margin-top:80px !important;}
.mt120 { margin-top:120px !important;}

/* !Padding ------------------------------------------------------------------ */
.pt60 { padding-top:60px !important;}
.pt30 { padding-top:30px !important;}


/* !Width ------------------------------------------------------------------- */
.w7per { width: 7% !important;}
.w10per { width: 10% !important;}
.w20per { width: 20% !important;}
.w40per { width: 20% !important;}
.w80per { width: 80% !important;}
.w90per { width: 90% !important;}

/* !Inline Align ------------------------------------------------------------ */
.taC { text-align: center !important;}
.taR { text-align: right !important;}
.taL { text-align: left !important;}
.ImgC { display: block; margin-left: auto; margin-right: auto;}

/* !Floats ------------------------------------------------------------------ */
.flL    { display: inline; float: left; clear: both;}
.flR    { display: inline; float: right; clear: both;}

/* !line-height ------------------------------------------------------------------ */
.lh24    { line-height:2.4em;}

/*---ライン---*/
.line_top {
   width:100%;
   border-top: 1px solid #ccc;
}

.line_bottom {
   width:100%;
   border-bottom: 1px solid #000;
    padding-top: 20px;
}

.line_bottom2 {
   width:100%;
   border-bottom: 1px dotted #000;
    padding-top: 20px;
}

/*---背景---*/
.mediabbg {
	background-color: #524B4B;
}

/* --------------------------------------
Added by Fukuoka
-------------------------------------- */
.lavel2-heading {
	line-height: 1.3;
}

.banner {
	display: flex;
	justify-content: center;
	gap: 20px;
}

.pc-none {
	display: none;
}

@media screen and (max-width: 767px) {
	.lavel2-heading {
		padding: 0;
		font-size: 24px;
		font-weight: normal;
	}

	.banner {
		flex-wrap: wrap;
	}

	.pc-none {
		display: block;
	}
}