@charset "UTF-8";
/*
 * cmn_layout.css
 *
 */


/* !HTML5 elements
---------------------------------------------------------- */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section { display: block; }
/* !Reseting
---------------------------------------------------------- */
body {
  font-family: 'Noto Sans JP', sans-serif, "Meiryo", "メイリオ", "ＭＳ Ｐゴシック";
  font-size: 92%;
  outline: none;
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.6;
  color: #494949;
  letter-spacing: 0.1em;
  overflow:hidden;
  background:#FFF;
}
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: 1rem;
}
label { cursor: pointer; }
table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 1rem;
}
fieldset,
img { border: 0; }
img {
  max-width: 100vw;
  width: auto;
  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: 1rem;
  font-weight: normal;
}
q:after,q:before { content: ''; }
a,
input { outline: none; }
input,textarea {
  border-radius: 0;
  font-family: Arial, Helvetica, Verdana, sans-serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic";
  padding: 8px;
  margin-bottom: 4px;
  font-size: 1.4em;
  font-weight: bold;
}
input[type="button"],input[type="submit"] {
  -webkit-appearance: none;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  background-color: #00A3AF;
  color: #FFF;
  width: auto;
  padding: 16px 32px;
}
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;
}
/* !Layout
---------------------------------------------------------- */
html { overflow-y: scroll; }
body { /*text-align: center;*/ }
@media print {
html,
 html body { *zoom: 0.65;
}
body { font-size: 87%; }
}
/* !wrapper
---------------------------------------------------------- */
#wrapper { position: relative; }
@media screen and (max-width:1024px) {
#wrapper { }
}
/* !header
---------------------------------------------------------- */
#header {
  width: 100vw;
  position: relative;
}
#headerIn {
  max-width: 100vw;
  text-align: left;
  height: 96px;/* height: 112px; */
}
#headerLogo {
  width: 312px;
  float: left;
  padding: 20px 32px;
}
#headerLogo span { }
#headerUtility {
  display: block;
  padding: 24px 0;
  position: fixed;
  right: 0;
  z-index: 999999;
  width: 96px;
  background-color: #FFF;
}
#headerSearch {
  width: 400px;
  /* padding: 40px 0; */
  position: absolute;
  left: 380px;
  top: 24px;
  display: none;
}
#headerSearch label { display: none; }
#headerSearch input[type="text"] {
  width: 392px;
  height: 40px;
  line-height: 40px;
  padding: 0 0 4px 4px;
  border: 1px solid #CCC;
  border-radius: 8px;
  vertical-align: middle;
}
#headerSearch input[type="submit"] {
  background: url(../images/ico/search01.png) no-repeat center;
  padding: 12px;
  width: 20px;
  right: 20px;
  position: absolute;
}
#headerSearch input[type="button"] {
  width: 102px;
  padding: 3px;
  text-align: center;
  background-color: #248b9a;
  color: #fff;
  border-radius: 0 2px 2px 0;
  vertical-align: middle;
}
#headerLinks {
  text-align: right;
  float: right;
}
#headerLinks li {
  display: inline-block;
  border-right: none;
  font-size: 82%;
}
#headerLinks li:first-child { border-left: none !important; }
#headerLinks li a {
  color: #fff;
  text-decoration: none;
  padding: 4px 0 4px 10px;
  background: url(../img/ico/ico_arrow_r01_pc.png) left 0.5em no-repeat;
}
#headerLinks li a:before {
  content: "\f105";
  font-family: FontAwesome;
  padding: 0 10px;
}
#headerLinks li a:hover {
  border: none;
  color: #FCDB78;
}
#headerLinks li:last-child { margin-right: 20px; }
.socialLinks { float: right; }
.socialLinks li {
  margin-left: 6px;
  height: 20px;
  float: right;
}
.socialLinks li a:before { margin-left: 6px; }
@media screen and (max-width:1024px) {
#header {
  padding: 0;
  height: auto;
}
#headerIn {
  padding: 16px;
  height: auto;
  height: 64px;
}
#headerLogo {
  width: 160px;
  padding: 0;
  height: auto;
  text-align: center;
  margin: 0 auto;
}
#headerLogo img { }
#headerUtility {
  float: none;
  padding: 32px 0;
  display: none;
  background: transparent;
  width: 64px;
}
#headerUtility a { }
#headerSearch {
  width: 80%;
  margin: 0 auto;
  /* padding: 40px 0; */
  position: absolute;
  left: 0;
  right: 0;
  top: 80px;
  float: none;
  border: 1px solid #CCC;
  border-radius: 2px 0 0 2px;
  display: none;
}
#headerSearch input[type="text"] {
  width: 240px;
  padding: 4px;
  border: none;
  border-radius: 2px 0 0 2px;
}
#headerSearch input[type="button"] {
  width: 72px;
  padding: 3px;
  text-align: center;
  background-color: #248b9a;
  color: #fff;
  border-radius: 0 2px 2px 0;
}
#headerSearch ul { display: none; }
#headerLinks { display: none; }
#headerLinks li { padding: 0 5px; }
}
/* !gNavi
---------------------------------------------------------- */
#gNaviWrap { /* padding: 0 24px; */ 
  position:relative;
}
#gNaviWrap:before {
    background: url(../images/logo/Logo01.png) no-repeat center;
    content: "";
    top: -160px;
    position: absolute;
    left: 56px;
    height: 123px;
    width: 65px;
    z-index: 999999;
  }
#gNavi {
  height: 72px;
  vertical-align: middle;
  margin-right: 0;
}

#gNavi ul {
  /* float: left; */
  display: table;
  height: 72px;
    margin: 0;
}
#gNavi li {
  display: table-cell;
  /* text-align: center; */
  position: relative;
  /* padding-right: 16px; */
  font-size: 94%;
  /* background: url(../images/ico/icon_gnavi_off.png) no-repeat left center; */
  padding-right: 28px;
  vertical-align: middle;
}
#gNavi li > a { display: block; }
#gNavi .subNavi,
#gNavi {/* margin-left: -48px; */}
#gNavi .subNavi li { margin-left: 0; }
#gNavi .subNavi {/*非表示のドロップダウンメニューく*/
  transition: all .40s ease;
  z-index: 99999;
  width: 190px;
  position: absolute;
  background: rgb(44, 179, 189);
  top: 50px;
  opacigy: 0.9;
  font-size: 78%;
  padding: 0 8px;
  display: none;
  text-align: left;
  letter-spacing: 0.1em;
}
#gNavi .subNavi::after {
  border-right: 32px solid transparent;
  border-bottom: 24px solid #2cb3bd;
  border-left: 32px solid transparent;
  position: absolute;
  top: -32px;
  /* z-index:9999999; */
  content: "";
  left: 60px;
  /* right: 50%; */
  text-align: center;
  height: 12px;/* width: 16px; */
}
#gNavi li:hover .subNavi {/*親要素のliにマウスが当たると開く*/ display: block; }
#gNavi ul li:hover a {/*親要素のliにマウスが当たると下線を表示*/ /*border-bottom:#2cb3bd 3px solid;*/
}
#gNavi ul li ul li {
  display: block;
  transition: .2s;
  border-bottom: 1px dotted #FFF;
  padding: 8px;
}
#gNavi ul li ul:last-child { }
#gNavi .subNavi li:first-child { border-left: none; }
#gNavi ul li a { /* padding-bottom: 8px; */
text-decoration: none !important;/* font-size: 1rem; */
                        /* background-color: rgba(22, 28, 47, 0.27); */
                        /* color: #333333; */
                        /* height:100px; */
}
#gNavi li a:hover,
 #gNavi li a:focus,
 #gNavi li a:active { background-color: none; }
#gNavi .subNavi li a {
  /* padding:8px; */
  border: none !important;
  color: #FFF;
}
#gNavi ul li ul li a:hover { border: none !important; }
#gNaviWrap .nav_benten {
  background-color: #F5D518;
  float: right;
  width: 96px;
  height: 96px;
  text-align: center;
  font-weight: 600;
  margin-right: 96px;
  padding: 16px 6px 6px 6px;
  position: absolute;
  top: 0;
  right: 0;
}
#gNaviWrap .nav_benten span {
  font-size: 9px;
  letter-spacing: 0;
  font-weight: normal;
  display: block;
}
#gNaviWrap .nav_menu {
  width: 96px;
  height: 96px;
  float: right;
  text-align: center;
  color: #FFF;
  background: #00A3AE url(../../images/subnavi04.png) no-repeat center;
}
#gNaviWrap .nav_benten:hover{
 background-color:rgba(245, 213, 24, 0.65);
}
@media screen and (max-width:1024px) {
#gNavi { display: none; }
#gNaviWrap:before {
    background: url(../images/logo/Logo01.png) no-repeat center;
    content: "";
    top: -140px;
    position: absolute;
    left: 48px;
    height: 123px;
    width: 65px;
    z-index: 999999;
  }
}
.gNavi02Wrap {
  max-width: 100vw;
  margin: 0 auto;
  box-sizing: border-box;
}
.gNavi02 {
  max-width: 100vw;
  margin: 0 auto;
  box-sizing: border-box;
}
.gNavi02 ul {
  display: table;
  table-layout: fixed;
  border-collapse: collapse;
  float: right;
  margin-top: 10px;
}
.gNavi02 ul li {
  display: table-cell;
  text-align: center;
  border-right: 1px solid #ADADAD;
}
.gNavi02 ul li:last-child { border-right: none; }
.gNavi02 ul li span {
  display: block;
  text-align: center;
  padding: 3px;
  font-size: 12px;
  color: #BEB0A3;
}
.gNavi02 ul li ul { padding: 10px; }
.gNavi02 ul li ul li { border-left: 1px solid #50a2ae; }
.gNavi02 ul li ul:last-child { border-left: 1px solid #50a2ae; }
.gNavi02 ul li ul li:first-child { border-left: none; }
.gNavi02 ul li a {
  display: block;
  background-color: transparent;
  color: #fff;
  text-decoration: none;
  font-size: 115%;
  padding: 0 20px;
}
.gNavi02 li a:hover,
 .gNavi02 li a:focus {
  background-color: transparent;
  border-bottom: 3px solid #FFE599;
  margin-bottom: -3px;
}
body#g01 #gNav01 a,
body#g02 #gNav02 a,
body#g03 #gNav03 a,
body#g04 #gNav04 a,
body#g05 #gNav05 a {
  background-image: url(../img/bg/bg_gnavi01.png);
  background-position: left bottom;
  background-repeat: repeat-x;
}
@media screen and (max-width:1024px) {
.gNavi02 ul {
  width: 100vw;
  display: table;
  table-layout: auto;
  border-collapse: separate;
}
.gNavi02 ul li {
  display: inline-block;
  text-align: center;
  width: 50%;
  border: 1px solid #1e1e1e;
  padding: 4px;
  font-size: 84%;
  float: left;
  background-color: #8C2300;
}
.gNavi02 ul li a { padding: 0; }
.gNavi02 ul li span { display: none; }
.gNavi02 ul li:first-child ul li { border-top: none; }
.gNavi02 ul li:last-child {
  display: block;
  width: 100vw;
  margin: 10px 0;
  background-color: #BEB0A3;
  color: #000;
}
}
/* !breadcrumb
---------------------------------------------------------- */
#breadcrumbWrap {
  width: 100vw;
  height: 80px;
  line-height: 80px;
}
#breadcrumb {
  width: 1024px;
  margin: 0 auto;
  overflow: hidden;
}
#breadcrumb li {
  float: left;
  white-space: nowrap;
  font-size: 86%;
}
#breadcrumb > li + li:before {
  content: "\f105";
  font-family: FontAwesome;
  padding: 0 10px;
}
#breadcrumb li.breadcrumb-home:before {
  content: "\f015";
  font-family: FontAwesome;
  padding: 0 10px;
  color: #2cb3bd !important;
}
#breadcrumb li a { white-space: nowrap; }
 @media screen and (max-width:1024px) {
#breadcrumbWrap {
  height: 40px;
  line-height: 40px;
}
#breadcrumb { width: 100vw; }
#breadcrumb li.current-crumb { display: none; }
}
/* !mainimg
---------------------------------------------------------- */
#mainimg { width: 100vw; }
#mainimg .mainimg--commentWrap {
  float: right;
      width: calc(35vw - 80px);
}
#mainimg .mainimg--commentNav { padding: 32px 0;
  
}
#mainimg .mainimg--commentNav ul {display: table;margin:0;padding: 0;}
#mainimg .mainimg--commentNav ul li {
  display: table-cell;
  margin-right: 32px;
  /* float: left; */
  padding-right: 32px;
  }
#mainimg .mainimg--commentNav ul li.telno {
  margin-right:0;
  background-color:#333;
  color:#FFF;
  padding: 8px 16px;
  display: table-cell;
  white-space: nowrap;
  /* float: left; */
  }
#mainimg .mainimg--commentNav ul li.telno a {
  color:#FFF !important;
}
#mainimg .mainimg--comment {
  background: #E8EEED;
  padding:120px 32px;
}
#mainimg h1 {
font-size: 4.8vw;
    color: #666666;
    font-family: 'Damion', cursive;
    font-weight: 500;
    margin-bottom: 32px;
    margin-left: -72px;
    letter-spacing: 0.1em;
    padding-top: 120px;
}
#mainimg h1 span {
font-size:1.2rem;
display:block;
text-align:right;
}
#mainimg h2 {
  font-size: 300%;
  color: #004C66;
}
#mainimg div.mainVisual {
  width: 65%;
  float: left;
  position: relative;
}
.mainVisual:before {
  content: "KULABO TAISHOKAN";
  width: 16px;
  bottom: 0;
  right: -24px;
  z-index: 99999;
  -moz-writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  position: absolute;
  /* text-align: center; */
  font-size: 10px;
  letter-spacing: 0.3em;
  color: #b3b3b3;
}
.mainVisual img { min-height: 640px; }
/*	#mainimg span {
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		height: 1em;
		color: #333;
		font-weight: bold;
		font-size: 343%;
	}*/
@media screen and (max-width:1024px) {
#mainimg {width: 100vw;}
#mainimg .mainimg--commentWrap {
  float: right;
  width: 50vw;
  position: absolute;
  top: 0;
  z-index: 999;
  right: 0;
}
#mainimg .mainimg--commentNav {
  
padding: 16px 0;
  
position: absolute;
  
/* left: -200px; */
  
right: 48px;
}
#mainimg .mainimg--commentNav ul {display: table;}
#mainimg .mainimg--commentNav ul li {
  display: table-cell;
  margin-right: 32px;
  /* float: left; */
  padding-right: 32px;
  }
#mainimg .mainimg--commentNav ul li.telno {
  white-space: nowrap;
  }
#mainimg .mainimg--commentNav ul li.telno a {
display:block;
color:#FFF !important;
}
#mainimg .mainimg--comment {
  background: none;
  padding: 30vw 0;
}
#mainimg h1 {
font-size: 2rem;
color: #383737c2;
font-family: 'Damion', cursive;
font-weight: 500;
margin-bottom: 16px;
margin-left: 0;
letter-spacing: 0.1em;
padding: 40px 8px 32px 8px;
background: rgba(232, 238, 237, 0.79);
}
#mainimg h1 span {
font-size: 0.7rem;
display:block;
text-align:right;
font-family: cursive;
letter-spacing: 0.1rem;
}
#mainimg h2 {
  font-size: 300%;
  color: #004C66;
}
#mainimg .mainimg--comment p {
  font-size:0.6rem;
  color:#FFF;
  padding: 0 8px 0 0;
  }
#mainimg div.mainVisual {
  width: 100vw;
  position: relative;
  float: none;
  padding-top: 72px;
}
.mainVisual:before {
  content: "KULABO TAISHOKAN";
  width: 100%;
  height: auto;
  bottom: 6px;
  right: 16px;
  z-index: 99999;
  -moz-writing-mode: unset;
  -ms-writing-mode: unset;
  -o-writing-mode: unset;
  writing-mode: unset;
  position: absolute;
  text-align: right;
  font-size: 6px;
  letter-spacing: 0.3em;
  color: hsla(0, 0%, 95%, 0.42);
}
.mainVisual img {min-height: auto;}
/*	#mainimg span {
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		height: 1em;
		color: #333;
		font-weight: bold;
		font-size: 343%;
	}*/  
}
@media screen and (max-width: 599px) {
#mainimg .mainimg--commentNav {
right: 40px;
}
#mainimg .mainimg--commentNav ul {display: table;font-size: 4vmin;}
#mainimg .mainimg--commentNav ul li {
  display: table-cell;
  margin-right: 0;
  /* float: left; */
  padding-right: 16px;
  }
#mainimg .mainimg--commentNav ul li.telno {
  white-space: nowrap;
  padding: 8px;
  }
#mainimg .mainimg--commentNav ul li.telno a {
display:block;
color:#FFF !important;
}
}
/* !contents
---------------------------------------------------------- */
#contentsWrap {
  margin: 0 auto;
}
#contents {
  text-align: left;
  padding: 24px 64px;
  margin: 0 auto;
  width: 1024px;
}
#mainWrap { width: 100vw; 
}
#main {
  float: right;
  width: 75.5%;
  padding-top: 0px;
}
#sub {
  float: right;
  width: 248px;
  text-align: left;
}
@media screen and (max-width:1024px) {
#contentsWrap { width: 100vw; }
#contents {
  width: 100vw;
  padding: 0;
}
#main {
  float: none;
  width: auto;
  padding: 0;
}
#sub {
  float: none;
  width: auto;
  margin-top: 40px;
}
}
/* !lNavi
---------------------------------------------------------- */
#lNavi { width: 100vw; }
#lNavi .naviHead {
  padding: 10px;
  text-align: center;
  background-color: #8A1319;
  color: #fff;
}
#lNavi ul { }
#lNavi ul li { border-bottom: 1px solid #1E1E1E; }
#lNavi ul li a {
  background-color: #272727;
  background-image: url(../img/ico/ico_arrow_r01_pc.png);
  background-position: 14px center;
  background-repeat: no-repeat;
  padding: 10px 10px 10px 30px;
  display: block;
  color: #fff;
  text-decoration: none;
}
#lNavi ul li a.current,
 #lNavi ul li a.parent,
 #lNavi ul li a:hover { background-color: #333333; }
#lNavi ul li ul {
  border-top: 1px solid #515151;
  padding-left: 30px;
  background: #484848;
}
#lNavi ul li ul li { }
#lNavi ul li ul li:last-child { border-bottom: none; }
#lNavi ul li ul li a {
  background: url(../img/ico/ico_child01_pc.png) 3px center no-repeat;
  padding: 10px 10px 10px 20px;
}
#lNavi ul li ul li a.current,
 #lNavi ul li ul li a:hover { background-color: #666; }
@media screen and (max-width:1024px) {
#lNavi ul li a {
  background-image: url(../img/ico/ico_arrow_r01_sp.png);
  background-size: 7px 7px;
  -webkit-background-size: 7px 7px;
  -moz-background-size: 7px 7px;
}
#lNavi ul li ul {
  border-top: 1px solid #515151;
  padding-left: 30px;
}
#lNavi ul li ul li a {
  background-image: url(../img/ico/ico_child01_sp.png);
  background-size: 8px 8px;
  -webkit-background-size: 8px 8px;
  -moz-background-size: 8px 8px;
  padding: 10px 10px 10px 20px;
}
}
/* !pageTop
---------------------------------------------------------- */
.pageTop {
  position: absolute;
  right: 10%;
  top: -48px;
}
.pageTop a {
  display: inline-block;
  text-decoration: none;
  padding: 0;
  background-color: #FFF;
  font-size: 1.3em;
  color: #050505;
  line-height: 48px;
  width: 48px;
  height: 48px;
  border-radius: 0;
  text-align: center;
}
.pageTop a:hover {
  background-color: #fccf17;
  color: #050505;
}
@media screen and (max-width:1024px) {
.pageTop {position: absolute;text-align: center;padding: 5px 0;top: -53px;left: calc( 50% - 10px);;}
.pageTop a {display: block;padding: 0;background-color: #060606;line-height: 48px;width: 48px;height: 48px;border-radius: 0;color: #FFF !important;}
}
/* !footer
---------------------------------------------------------- */
#footer {
  width: 100vw;
  position: relative;
}
#footerIn {
  width: 90vw;
  text-align: center;
  margin:0 auto;
  padding-bottom: 32px;
}
#copyright {
  text-align: left;
  float:left;
}
#footerLogo {
  float: left;
  vertical-align: bottom;
  margin-right: 40px;
}
#footer #footerSocial {
  float: none;
  padding: 32px;
}

@media screen and (max-width:1024px) {
#footer {
  width: 100vw;
  padding: 0;
  margin: 0;
}
#footerIn {height: auto;width: 100%;/* padding: 0 16px; */}
.footerLinksWrap { padding: 40px 0 32px 0; }
.footerLinks { display: none; }
#copyright {
  text-align: center;
  margin-bottom: 20px;
  clear: both;
  font-size: 80%;
  width: 100vw;
  margin: 0 auto;
}
#copyright span { display: block; }
#footerIn img { display: none; }
#footerBanner { display: none; }
#copyright #footerSocial {
  float: none;
  margin: 16px 0;
  text-align: center;
}
}
/* !h(n)eading
---------------------------------------------------------- */
.tit_basic01 {
  font-size: 200%;
  margin-top: 36px;
  margin-bottom: 24px;
  color: #2cb3bd;
}
.tit_basic01 span {
  display: inline;
  margin-left: 0.2em;
  font-size: 0.8em;
}
.tit_basic01Wrap {
  border-top: 5px solid #e39600;
  padding-top: 12px;
}
.tit_basic01Wrap .tit_basic01 {
  overflow: hidden;
  border-top: none;
  padding-top: 0;
}
.tit_basic01Wrap .btnR {
  float: right;
  padding-top: 12px;
  margin-left: 10px;
}
.tit_basic01Wrap .btnR a {
  font-size: 86%;
  color: #666;
  text-decoration: none;
  padding-left: 10px;
  background: url(../img/ico/ico_arrow_r03_pc.png) left 0.3em no-repeat;
}
.tit_basic01Wrap .btnR a:hover { text-decoration: underline; }
.tit_basic02 {
  text-align: center;
  position: relative;
  font-size: 148%;
  font-weight: 600;
  padding: 64px 0 0 0;
}
.tit_basic02 span { border-bottom: 4px solid #2cb3bd; }
.tit_basic02:first-letter { /*	margin-right: 0.1em;
	font-size: 1.8em;
	color: #fdd000;*/
}
.tit_basic02 div {
  position: absolute;
  right: 0;
  vertical-align: middle;
  /* border: 1px solid #FFF; */
  padding: 4px 6px;
  text-align: right;
  width: 200px;
  font-size: 60%;
  bottom: 6px;
  display: block;
}
.tit_basic03 {
  font-size: 130%;
  color: #000000;
  margin-bottom: 24px;
  text-decoration: none;
  font-weight: 600;
}
.tit_basic03 a {
  text-decoration: none;
  font-weight: 600;
}
.tit_basic04 {
  font-size: 120%;
  padding: 6px 4px 6px 10px;
  border-bottom: 1px solid #ccc;
  position: relative;
  margin: 24px 0;
  clear: both;
}
.tit_basic04:after {
  position: absolute;
  bottom: -4px;
  left: 0;
  z-index: 2;
  content: '';
  width: 20%;
  height: 4px;
  background-color: #FCDB78;
}
.tit_basic05 {
  font-size: 110%;
  color: #F9D235;
}
.tit_basic05 a {
  color: #fcdb78;
  text-decoration: underline !important;
}
.tit_basic06 {
  font-size: 140%;
  color: #00A3AD;
  margin-bottom: 32px;
  text-decoration: none;
  font-weight: 600;
}
@media screen and (max-width:1024px) {
.tit_basic01 { font-size: 120%; }
.tit_basic01Wrap { margin: 0 -10px; }
.tit_basic01Inner {
  display: table;
  width: 100vw;
  padding: 0 10px;
}
.tit_basic01Wrap .tit_basic01 {
  display: table-header-group;
  width: 100vw;
}
.tit_basic01Wrap .btnR {
  float: none;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 5px 0 5px 10px;
  margin: 0 -10px;
}
.tit_basic01Wrap .btnR a {
  display: block;
  font-size: 1rem;
  background: none;
  position: relative;
  padding: 0 20px 0 0;
}
.tit_basic01Wrap .btnR a:after {
  content: '';
  display: block;
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -5px;
  width: 5px;
  height: 10px;
  background-image: url(../img/ico/ico_arrow_r03_sp.png);
  background-position: left top;
  background-repeat: no-repeat;
  background-size: 5px 10px;
  -webkit-background-size: 5px 10px;
  -moz-background-size: 5px 10px;
}
.tit_basic03 {
  font-size: 1rem;
  margin-bottom: 16px;
  text-decoration: none;
  font-weight: 0;
}
.tit_basic03 a {
  text-decoration: none;
  font-weight: 400;
}
}
/* !Listing
---------------------------------------------------------- */
.list_basic01 { }
.list_basic01 li {
  margin-bottom: 10px;
  position: relative;
  padding-left: 1em;
}
.list_basic01 li:last-child { margin-bottom: 0; }
.list_basic01 li .mark {
  position: absolute;
  left: 0;
  top: 0;
}
/*　黒丸　*/		
.list_basic02 {
  margin-top: 10px;
  margin-left: 1em;
}
.list_basic02 li {
  margin-bottom: 10px;
  position: relative;
  list-style-type: disc;/*	margin-left: 1.2em;*/
}
.list_basic02 li:last-child { margin-bottom: 0; }
.list_basic02 li .mark {
  position: absolute;
  left: 0;
  top: 0;
}
.list_arrow01 { }
.list_arrow01 li {
  display: block;
  padding: 4px 14px 4px 14px;
}
.list_arrow01 li:before {
  content: "\f105";
  font-family: FontAwesome;
  padding: 0 10px;
}
.list_arrow01 li:last-child { margin-bottom: 0; }
.list_link01 { }
.list_link01 li { margin-bottom: 10px; }
.list_link01 li:last-child { margin-bottom: 0; }
.list_link01 li a {
  display: inline-block;
  background: url(../img/ico/ico_arrow_r03_pc.png) left 0.5em no-repeat;
  padding-left: 14px;
}
@media screen and (max-width:1024px) {
.list_link01 {
  border-top: 1px solid #ccc;
  margin: 0 -10px;
}
.list_link01 li {
  border-bottom: 1px solid #ccc;
  margin-bottom: 0;
}
.list_link01 li a {
  position: relative;
  background: none;
  display: block;
  text-decoration: none;
  padding: 8px 10px;
}
.list_link01 li a:after {
  content: '';
  display: block;
  width: 5px;
  height: 10px;
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -5px;
  background-image: url(../img/ico/ico_arrow_r03_sp.png);
  background-position: left top;
  background-repeat: no-repeat;
  background-size: 5px 10px;
  -webkit-background-size: 5px 10px;
  -moz-background-size: 5px 10px;
}
}
.list_inline01 { margin-top: -10px; }
.list_inline01 li {
  display: inline-block;
  margin: 4px 20px 0 0;
}
.list_inline01 li:last-child { margin-right: 0; }
.list_inline01 { }
.list_inline01.col2 li {
  width: 49.9%;
  float: left;
  margin-right: 0;
  position: relative;
  padding-left: 1em;
}
.list_inline01.col2 li .mark {
  position: absolute;
  left: 0;
  top: 0;
}
@media screen and (max-width:1024px) {
.list_inline01 li { margin-top: 0; }
.list_inline01 li,
 .list_inline01.col2 li {
  display: block;
  float: none;
  margin: 0;
  width: auto;
  position: relative;
  padding: 6px;
  border-top: 1px dotted #FFF;
}
.list_inline01 li:last-child {
  border-bottom: 1px dotted #FFF;
  margin-right: 20px;
}
.list_inline01 li .mark {
  position: absolute;
  left: 0;
  top: 0;
}
}
.list_notes01 { margin-top: 10px; }
.list_notes01 li { display: table; }
.list_notes01 li .mark {
  display: table-cell;
  vertical-align: top;
  width: 2.5em;
}
.list_notes01 li .text {
  display: table-cell;
  vertical-align: top;
}
.list_dl01 {
  margin: 20px 0;
  margin: 20px 0;
  background: rgba(44, 179, 189, 0.2);
  border-bottom: 1px solid #ccc;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
}
.list_dl01 dt {
  float: left;
  width: 20em;
  clear: both;
  padding: 16px 8px 16px 20px;
  border-top: 1px solid #ccc;
}
.list_dl01 dt span {
  font-size: 12px;
  color: #f66;
  display: inline-block;
  margin-left: 4px;
}
.list_dl01 dd {
  border-top: 1px solid #ccc;
  padding: 16px 8px 16px 20px;
  overflow: hidden;
  /* margin-bottom: 20px; */
  background: #FFF;
  border-left: 1px solid #2db4be;
}
@media screen and (max-width:1024px) {
.list_dl01 { }
.list_dl01 dt {
  float: none;
  width: auto;
}
.list_dl01 dd {
  border-left: none;
  padding-left: 0;
}
}
.list_dl02 {
  margin: 20px 0;
  border-top: 1px solid #ccc;
}
.list_dl02 dt {
  float: left;
  width: 10em;
  clear: both;
  padding: 15px 0;
  font-weight: bold;
}
.list_dl02 dd {
  padding: 15px 0 15px 10em;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width:1024px) {
.list_dl02 { }
.list_dl02 dt {
  float: none;
  width: auto;
  padding-bottom: 0;
}
.list_dl02 dd { padding: 0 0 15px 0; }
}
.list_dl03 { margin: 20px 0; }
.list_dl03 dt {
  float: left;
  width: 9em;
  clear: both;
  padding: 8px 0;
  font-weight: normal;
}
.list_dl03 dd { padding: 8px 0 8px 8em; }
/*投稿カテゴリアイコン*/
.list_dl03 dd span {
  float: left;
  width: 6em;
  margin: 0 10px 10px 0;
  padding: 5px;
  text-align: center;
  font-size: 10px;
}
.list_dl03 dd span.event_topics {
  background: #8C2300;
  color: #FFF;
}
.list_dl03 dd span.information {
  background: #635445;
  color: #FFF;
}
.list_dl03 dd span.attention {
  background: #FFD24D;
  color: #000;
}
.list_dl03 dd span.etc {
  background: #FFFCB6;
  color: #000;
}
.list_tags { margin: 32px 0; }
.list_tags li {
  display: inline;
  background-color: #fccf17;
  border-radius: 8px;
  padding: 4px 16px;
  margin-right: 8px;
}
@media screen and (max-width:1024px) {
.list_dl03 { }
.list_dl03 dt {
  float: none;
  width: auto;
  padding-bottom: 0;
}
.list_dl03 dd { padding: 0 0 15px 0; }
}
.list_order01 { margin: 20px 0; }
.list_order01 li { display: table; }
.list_order01 li .mark,
 .list_order01 li .detail {
  display: table-cell;
  vertical-align: top;
}
.list_order01 li .mark {
  color: #e39600;
  font-weight: bold;
}
.list_order01 li .detail { padding-left: 1em; }
.list_ol01 {
  list-style: decimal;
  margin-left: 2em;
}
.list_ol01 li { margin-bottom: 8px; }
/* !Table
---------------------------------------------------------- */
.table_basic01 {
  width: 100vw;
  border-collapse: separate;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  margin-bottom: 8px;
}
.table_basic01 th,
 .table_basic01 td {
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 6px 4px;
}
.table_basic01 th { background-color: #E1E1E1; }
.table_basic01 td { }
@media screen and (max-width:1024px) {
.table_basic01 { width: 100vw; }
.table_basic01,
 .table_basic01 thead,
 .table_basic01 tbody,
 .table_basic01 tr,
 .table_basic01 th,
 .table_basic01 td {
  width: 100vw;
  display: block;
}
.table_basic01 th,
 .table_basic01 td {
  border-top: none;
  border-left: none;
}
.table_basic01 th { }
.table_basic01 td { }
}
.table_basic02 {
  width: 100vw;
  border-collapse: separate;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  margin-bottom: 24px;
}
.table_basic02 th,
 .table_basic02 td {
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 6px 4px;
}
.table_basic02 th {
  background-color: #f1f1f1;
  text-align: center;
  font-weight: 600;
}
.table_basic02 td { }
@media screen and (max-width:1024px) {
.table-scroll {
  overflow: auto;
  white-space: nowrap;
}
.table-scroll::-webkit-scrollbar {
height: 8px;
}
.table-scroll::-webkit-scrollbar-thumb {
background: #aaa;
}
.table-scroll::-webkit-scrollbar-track {
background: #ccc;
}
}
/*tableを横スクロールスクロールさせる<div class="table-scroll">で囲む*/
.table-scroll > table {
  width: 100vw;
  border-collapse: separate;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  margin-bottom: 16px;
}
.table-scroll > table th,
 .table-scroll > table td {
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 6px;
}
.table-scroll > table th {
  text-align: center;
  font-weight: 600;
}
.table-scroll > table tr:nth-child(2n) { background-color: #d2f1f7; }

/* tableを横スクロール(左端列固定)*/
.table-wrapper {
  width: auto;
  overflow: scroll;
}

.table-wrapper table {
  position: relative;
  border: 1px solid #ddd;
  border-collapse: collapse;
  width: 100vw;
}

.table-wrapper td, th {
  white-space: nowrap;
  border: 1px solid #babcbd;
  padding: 8px;
  text-align: center;
  /* border-bottom: 1px solid #babcbd; */
}

.table-wrapper th {
  background-color: #d2f1f7;
  position: sticky;
  top: -1px;
  z-index: 2;
  border: 1px solid #babcbd;
}
.table-wrapper th:first-of-type {
    left: 0;
    z-index: 3;
    border-top: none;
    border: none;
}
.table-wrapper tbody tr td:first-of-type {
  background-color: #d2f1f7;
  position: sticky;
  left: -1px;
  text-align: left;
  border: 1px solid #babcbd;
  text-align: center;
}
.table-wrapper tbody tr td:nth-of-type(2),
.table-wrapper thead tr th:nth-of-type(2) {border-right: 3px solid #e05a5a;border-left: 3px solid #e05a5a;}
.table-wrapper thead tr th:nth-of-type(2) {
    border: #e05a5a 3px solid;
    background-color: #e05a5a;
    color: #FFF;
}
.table-wrapper tbody tr:last-child td:nth-of-type(2) {border-bottom:3px solid #e05a5a; }
/* !Section
---------------------------------------------------------- */
.sectionLv01,
.sectionLv02,
.sectionLv03,
.sectionLv04 {
  margin: 0;
  width: 100vw;
}
section a:link { text-decoration: none; }
.sectionLv01 {
  width: 100vw;
  padding: 80px 32px;
}
.sectionLv03 { }
.sectionLv03 h1 {
  text-align: center;
  color: #000;
  font-size: 3.2rem;
}
.sectionLv03 h2 {
  color: #FFF;
  font-size: 140%;
}
.sectionLv04 { 
}
section .sectionInner01 {
  width: 1024px;
  margin: 0 auto;
  padding: 0 40px;
}
/*section[class^="section"]:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}*/
@media screen and (max-width:1024px) {
section .sectionInner01 { width: 100vw; }
.sectionLv01,
.sectionLv02,
.sectionLv03,
.sectionLv04 {
  padding: 0;
  margin: 0;
  position: relative;
}
.sectionLv01 {
  height: auto;
  margin-bottom: 0;
  padding-bottom: 0;
}
.sectionLv02 {
  margin-bottom: 0;
  padding-bottom: 0;
}
.sectionLv03 {
  margin-bottom: 15px;
  padding-bottom: 15px;
}
.sectionLv04 {
  margin-bottom: 20px;
  padding-bottom: 20px;
}
}
/* !Box
----------------------------------------------------------- */
.box_layout01 { margin: 0 0 32px 0; }
.box_layout01 figure.flImgL,
 .box_layout01 figure.flImgR { width: 320px; }
.box_layout01 p { font-size: 94%; }
.box_layout01 p span.date {
  color: #999;
  margin-top: 16px;
  display: block;
  font-size: 84%;
}
 @media screen and (max-width:1024px) {
.box_layout01 { }
.box_layout01 figure.flImgL,
 .box_layout01 figure.flImgR {
  float: left;
  margin: 0 16 0 0;
  width: 100px;
}
.box_layout01 p { display: none; }
.box_layout01 figure.layoutExchange { display: table-footer-group; }
.box_layout01 figure.layoutExchange + * { display: table-header-group; }
}
.box_column01 { }
.box_column01 .col { float: left; }
.box_column01.col2 .col {
  margin: 16px 5.2% 0 0;
  width: 47.3%;
  position:relative;
}
.box_column01.col2 .col::before {
    content: "";
    top: 0;
    left: 0;
    position: absolute;
    background: hsla(0, 0%, 0%, 0.52);
    width: 560px;
    height: 480px;
    z-index: 999;
}
.box_column01.col2 .col:hover:before {
     background: hsla(0, 0%, 0%, 0.2); 
}

.box_column01.col3 .col {
  margin: 32px 24px 0 0;
  width : -webkit-calc(33.333% - 16px);
  width: calc(33.333% - 16px);
  background-color: #FFF;
}
.box_column01.col4 .col {
  margin: 0;
  width: 24%;
  padding: 24px;
  box-sizing: border-box;
}
.box_column01.col3 .col figure img { width: 100vw; }
.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 { text-decoration: none; }
.box_column01 figure { }
.box_column01.col3 figure {
  margin-bottom: 16px;
  width: 100vw;
  max-height: 240px;
  height: 240px;
  overflow: hidden;
}
.box_column01 figure img { }
.box_column01 .inner {
  background-color: transparent;
  padding: 0 24px;
}
.box_column01 .inner .tit {
  display: block;
  font-weight: 600;
  border: none !important;
  padding: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 8px;
  font-size: 120%;
}
.box_column01 .inner .tit a { }
.box_column01 .inner p { text-align: left; }
.box_column01 span.date {
  color: #999;
  margin-top: 16px;
  display: block;
  font-size: 84%;
}
.box_column01 span.keywords {
  color: #999;
  display: block;
  font-size: 84%;
}
@media screen and (max-width:1024px) {
.box_column01 {
  margin: 0;
  border-top: none;
}
.box_column01 .col,
 .box_column01.col2 .col,
 .box_column01.col3 .col,
 .box_column01.col4 .col {
  float: none;
  width: 100vw;
  margin: 0;
  padding: 16px 0;
  text-align: left;
}
.box_column01 figure {
  float: left;
  width: 100px;
  margin-right: 10px;
  clear: both;
}
.box_column01 .inner { overflow: hidden;  background-color:transparent  padding: 0;
}
.box_column01 .inner .tit { margin-bottom: 4px; }
}
/* タブ/アコーディオン */
.box_switch01 { }
.box_switch01 .contentBox01 { padding: 30px 0; }
.switchNav01 { width: 100vw; }
.switchNav01 li {
  float: left;
  width: 100vw;
  border-bottom: 3px solid #248b9a;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
.switchNav01.col2 li { width: 50%; }
.switchNav01 li .tit { width: 100vw; }
.switchNav01 li .tit a {
  display: block;
  background-color: #dbdad6;
  color: #333;
  text-decoration: none;
  text-align: center;
  vertical-align: middle;
  padding: 11px 10px;
}
.switchNav01 li .tit a:hover,
 .switchNav01 li .tit a:focus {
  background-color: #248b9a;
  color: #fff;
}
.switchNav01 li.current .tit a {
  background-color: #248b9a;
  color: #fff;
}
.switchNav01 li .content { display: none; }
@media screen and (max-width:1024px) {
.box_switch01 { }
.switchNav01 {
  display: block;
  width: 100vw;
  height: auto;
  border-left: none;
}
.switchNav01 li {
  display: block;
  float: none;
  margin-top: 10px;
  border: none;
  background: none;
}
.switchNav01.col2 li { width: 100vw; }
.switchNav01 li .tit {
  background-color: #333;
  background-image: url(../img/ico/ico_open01_sp.png);
  background-size: 16px 16px;
  background-repeat: no-repeat;
  background-position: 15px center;
  color: #fff;
  font-weight: bold;
  cursor: pointer;
}
.switchNav01 li.open .tit {
  background-color: #333;
  background-image: url(../img/ico/ico_close01_sp.png);
}
.switchNav01 li .tit a,
 .switchNav01 li .tit a:hover,
 .switchNav01 li .tit a:focus,
 .switchNav01 li.current .tit a {
  padding: 20px 45px;
  background-color: transparent;
  color: #fff;
  font-size: 128.57%;
  text-align: center;
}
.switchNav01 li .content {
  padding: 15px;
  border: 4px solid #333;
}
.box_switch01 .contentBox01 { display: none; }
.box_column01.col2 .col::before {
    content: "";
    top: 0;
    left: 0;
    position: absolute;
    background: rgba(0, 0, 0, 0.52);
    width: 100%;
    height: 100%;
    z-index: 999;
}
}
/* !Btn
----------------------------------------------------------- */
.btn_basic01 {
  width: 100vw;
  display: table;
  color: #fff;
  text-decoration: none;
  border-radius: 4px;
  text-align: center;
  margin: 32px auto;
  clear: both;
}
.btn_basic01 span {
  display: table-cell;
  vertical-align: middle;
  padding: 16px 24px;
}
.btn_basic01 span a {
display:block;
cursor: pointer;
}
.btn_basic01:hover { opacity: 0.8; }
.btn_basic01.color01 {
  background-color: #FFF;
  width: 320px;
  color: #26B1BA;
}
.btn_basic01.color01:hover {
  background: #26B1BA;
  color: #FFF;
}
.btn_basic01 span {
  display: table-cell;
  vertical-align: middle;
}
/* 右向き矢印 */
.btn_Arrow_r01Wrap {
  width: 480px;
  margin: 0 auto;
}
.btn_Arrow_r01 {
  position: relative;
  display: inline-block;
  padding: 0 65px;
  letter-spacing: 0.2em;
  width: 100vw;
  margin: 32px 0;
}
.btn_Arrow_r01 span {
  background-color: #27B1BB;
  padding: 16px 24px;
  margin: 0 auto;
  z-index: 999999;
  position: relative;
  display: block;
  width: 240px;
  text-align: center;
  color: #FFF;
}
.btn_Arrow_r01:before {
  left: 0;
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 100vw;
  height: 2px;
  background-color: #27B1BB;
  z-index: 0;
}
.btn_Arrow_r01:after {
  top: 0;
  right: -5px;
  position: absolute;
  bottom: 25px;
  border-right: 2.4em solid transparent;
  border-bottom: 0.7em solid #00a3ad;
  content: "";
}
@media screen and (max-width:1024px) {
.btn_basic01 {
  position: relative;
  padding: 8px;
  background-image: none;
}
.btn_basic01:after {
  content: '';
  display: block;
  width: 7px;
  height: 10px;
  position: absolute;
  right: 18px;
  top: 50%;
  margin-top: -5px;
  background: url(../img/ico/ico_arrow_r02_sp.png) left top no-repeat;
  background-size: 7px 10px;
  -webkit-background-size: 7px 10px;
  -moz-background-size: 7px 10px;
}
.btn_basic01.color01 {
  background-color: #27B1BB;
  width: 100vw;
  color: #FFF;
}
.btn_Arrow_r01Wrap {
width: 98%;
padding: 0;
}
.btn_Arrow_r01 {
  width: 100vw;
  padding: 16px;
}
.btn_Arrow_r01:after { bottom: 40px; }
.btn_Arrow_r01 span {
  font-size: 0.8rem;
  width: 160px;
  padding: 16px 8px;
}
}
/* !Text
----------------------------------------------------------- */
.txt_color01 { color: #e00100; }
.txt_color02 { color: #00479d; }
.txt_color03 { color: #fcdb78; }
.txt_basic01 { margin-top: 30px; }
/* !TextLink
----------------------------------------------------------- */
.txtLink01 li { }
.txtLink01 li:first-child { }
.txtLink01 li a {
  text-decoration: none;
  padding: 0 0 0 6px;
  margin: 6px 0;
  color: #FEEFC0;
  text-decoration: underline;
}
.txtLink01 li a:before {
  content: "\f105";
  font-family: FontAwesome;
  padding: 0 10px;
  text-decoration: none;
}
.txtLink01 li a:hover {
  border: none;
  color: #FCDB78;
}
.txtLink01 li:last-child { }
/* !Img
----------------------------------------------------------- */
@media screen and (max-width:1024px) {
 img {
max-width: 100vw;
width: 100vw;
height: auto;
vertical-align: top;
}
}
.imgC01 {
  text-align: center;
  margin-top: 30px;
}
.imgC01 figcaption {
  font-size: 86%;
  margin-top: 0.5em;
}
 @media print {
body {
  background-color : #FFF;
  color : #000;
}
#lNavi ul li a {
  background-color : #FFF;
  color : #000;
}
}
/* !SNSアイコン
----------------------------------------------------------- */
.sns-icons {
  width: 98%;
  clear: both;
  margin: 0 auto;
}
.sns-icons > a {
  float: left;
  width: 23.8%;
  margin: 0 8px 32px 0;
  padding: 4px 0 10px;
  font-size: 12px;
  text-align: center;
  color: #fff !important;
  border-radius: 0;
  text-decoration: none !important;
}
.sns-icons .lsf-icon:before {
  font-size: 16px;
  vertical-align: -1px;
  margin-right: 8px;
}
.sns-icons .lsf-icon.twitter:before {
  font-family: FontAwesome;
  content: "\f099";
}
.sns-icons .lsf-icon.facebook:before {
  font-family: FontAwesome;
  content: "\f09a";
}
.sns-icons .lsf-icon.gplus:before {
  font-family: FontAwesome;
  content: "\f0d5";
}
.sns-icons .lsf-icon.hatebu:before {
  font-family: FontAwesome;
  content: "B!";
}
.sns-icons>a:hover {
  color: #FFF;
  background: #fb8;
  text-decoration: none;
}
@media screen and (max-width:1024px) {
.sns-icons>a {
  margin: 0;
  padding: 8px;
  width: 25%;
}
.sns-icons .lsf-icon:before {
  font-size: 12px;
  vertical-align: -1px;
}
}
/* !ドローワーメニュー-------------------------------------------------------------- */

.btn {
display: block;
    width: 48px;
    height: 48px;
    position: absolute;
    top: 28px;
    right: -52px;
    cursor: pointer;
    z-index: 999999;
    color: #CCC;
    font-size: 1.2rem;
    text-decoration: none;
    text-align: center;
    padding: 8px;
}
.peke { /*    background-position: -35px 0;*/
}
.btn:hover {
}
.drawr {
    background-color: rgba(97, 97, 97, 0.8);
    position: absolute;
    top: 48px;
    right: 0;
    width: 256px;
    padding: 32px 16px 20px 20px;
    z-index: 100;
    font-size: 0.8rem;
    text-align: left;
    display: none;
    z-index: 99999999;
    height:100vw;
}
#menu {
    height: 100vw;
    overflow-y: auto;
    margin: 0;
    padding: 0;
}
#menu li {
  display: block;
  padding: 6px;
background: url(../images/ico/icon_list02.png) no-repeat left 0.6em;
padding-left:16px;
}
#menu li > ul li {
    background:none;
    border-bottom: dotted #FFF 1px;
     padding-left: 8px;
}
#menu li > ul li::before {
  content: "\f105";
  font-family: FontAwesome;
  padding: 0;
  color: #FFF;
}
#menu li > ul li.last {
      border-bottom: none;
}
#menu li a {
  color: #FFF !important;
  padding: 8px;
  text-decoration: none;
    background:none;
}
@media screen and (max-width:1024px) {
.btn {
display: block;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 12px;
    right: 16px;
    cursor: pointer;
    z-index: 999999;
    color: #CCC;
    font-size: 1.2rem;
    text-decoration: none;
    text-align: center;
    padding: 8px;
}
.btn:hover {

}
.drawr {
    top: 72px;
    right: 0;
    width: 50%;
    padding: 24px 16px 16px 16px;
    font-size: 0.74rem;
}
#menu li {
  display: block;
  padding: 6px 0;
background:none;
}
}
@media screen and (max-width:320px) {
.drawr {
    width: 70%;
    font-size: 0.7rem;
}
#menu li {
  padding: 3px 0;
}
#menu li a {
  padding: 0;
}
6px 0 2px 0;
}

