 @import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
 /* 
 * ------- commons ---------------------
 */
 /*----------------------------
clearfix
-----------------------------*/
 .clearfix:before, .clearfix:after {
   content: " ";
   display: table;
 }
 .clearfix:after {
   clear: both;
 }
 .clearfix {
   *zoom: 1;
 }
 /*----------------------------
fonts
-----------------------------*/
 @font-face {
   font-family: 'minchouFont';
   src: url('../fonts/HanaMinA.eot'); /* IE9 Compat Modes */
   src: url('../fonts/HanaMinA.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('../fonts/HanaMinA.woff') format('woff'); /* Modern Browsers */
 }
 .minchouFontClass {
   font-family: "minchouFont";
 }
 /* Noto Sans Japanese */
 .noto100 {
   font-weight: 100;
 }
 .noto200 {
   font-weight: 200;
 }
 .noto300 {
   font-weight: 300;
 }
 .noto400 {
   font-weight: 400;
 }
 .noto500 {
   font-weight: 500;
 }
 .noto700 {
   font-weight: 700;
 }
 .noto900 {
   font-weight: 900;
 }
 @media screen and (max-width: 768px) {
   .minchouFontClass {
     font-family: serif;
   }
 }
 /* color */
 .red {
   color: #bc2d2d;
 }
 .green {
   color: #3b7a28;
 }
 .brown {
   color: #a67435;
 }
 .blue {
   color: #325f99;
 }
 /*----------------------------
spacer
-----------------------------*/
 /* padding */
 .pt0 {
   padding-top: 0px !important;
 }
 .pt5 {
   padding-top: 5px !important;
 }
 .pt10 {
   padding-top: 10px !important;
 }
 .pt15 {
   padding-top: 15px !important;
 }
 .pt20 {
   padding-top: 20px !important;
 }
 .pt25 {
   padding-top: 25px !important;
 }
 .pt30 {
   padding-top: 30px !important;
 }
 .pt40 {
   padding-top: 40px !important;
 }
 .pt50 {
   padding-top: 50px !important;
 }
 .pt60 {
   padding-top: 60px !important;
 }
 .pt70 {
   padding-top: 70px !important;
 }
 .pt80 {
   padding-top: 80px !important;
 }
 .pt90 {
   padding-top: 90px !important;
 }
 .pt100 {
   padding-top: 100px !important;
 }
 .pb0 {
   padding-bottom: 0px !important;
 }
 .pb5 {
   padding-bottom: 5px !important;
 }
 .pb10 {
   padding-bottom: 10px !important;
 }
 .pb15 {
   padding-bottom: 15px !important;
 }
 .pb20 {
   padding-bottom: 20px !important;
 }
 .pb25 {
   padding-bottom: 25px !important;
 }
 .pb30 {
   padding-bottom: 30px !important;
 }
 .pb40 {
   padding-bottom: 40px !important;
 }
 .pb50 {
   padding-bottom: 50px !important;
 }
 .pb60 {
   padding-bottom: 60px !important;
 }
 .pb70 {
   padding-bottom: 70px !important;
 }
 .pb80 {
   padding-bottom: 80px !important;
 }
 .pb90 {
   padding-bottom: 90px !important;
 }
 .pb100 {
   padding-bottom: 100px !important;
 }
 .pl0 {
   padding-left: 0px !important;
 }
 .pl5 {
   padding-left: 5px !important;
 }
 .pl10 {
   padding-left: 10px !important;
 }
 .pl15 {
   padding-left: 15px !important;
 }
 .pl20 {
   padding-left: 20px !important;
 }
 .pl25 {
   padding-left: 25px !important;
 }
 .pl30 {
   padding-left: 30px !important;
 }
 .pl40 {
   padding-left: 40px !important;
 }
 .pl50 {
   padding-left: 50px !important;
 }
 .pr0 {
   padding-right: 0px !important;
 }
 .pr5 {
   padding-right: 5px !important;
 }
 .pr10 {
   padding-right: 10px !important;
 }
 .pr15 {
   padding-right: 15px !important;
 }
 .pr20 {
   padding-right: 20px !important;
 }
 .pr25 {
   padding-right: 25px !important;
 }
 .pr30 {
   padding-right: 30px !important;
 }
 .pr40 {
   padding-right: 40px !important;
 }
 .pr50 {
   padding-right: 50px !important;
 }
 /* margin */
 .mt0 {
   margin-top: 0px !important;
 }
 .mt5 {
   margin-top: 5px !important;
 }
 .mt10 {
   margin-top: 10px !important;
 }
 .mt15 {
   margin-top: 15px !important;
 }
 .mt20 {
   margin-top: 20px !important;
 }
 .mt25 {
   margin-top: 25px !important;
 }
 .mt30 {
   margin-top: 30px !important;
 }
 .mt40 {
   margin-top: 40px !important;
 }
 .mt50 {
   margin-top: 50px !important;
 }
 .mt60 {
   margin-top: 60px !important;
 }
 .mt70 {
   margin-top: 70px !important;
 }
 .mt80 {
   margin-top: 80px !important;
 }
 .mt90 {
   margin-top: 90px !important;
 }
 .mt100 {
   margin-top: 100px !important;
 }
 .mb0 {
   margin-bottom: 0px !important;
 }
 .mb5 {
   margin-bottom: 5px !important;
 }
 .mb10 {
   margin-bottom: 10px !important;
 }
 .mb15 {
   margin-bottom: 15px !important;
 }
 .mb20 {
   margin-bottom: 20px !important;
 }
 .mb25 {
   margin-bottom: 25px !important;
 }
 .mb30 {
   margin-bottom: 30px !important;
 }
 .mb40 {
   margin-bottom: 40px !important;
 }
 .mb50 {
   margin-bottom: 50px !important;
 }
 .mb60 {
   margin-bottom: 60px !important;
 }
 .mb70 {
   margin-bottom: 70px !important;
 }
 .mb80 {
   margin-bottom: 80px !important;
 }
 .mb90 {
   margin-bottom: 90px !important;
 }
 .mb100 {
   margin-bottom: 100px !important;
 }
 .ml0 {
   margin-left: 0px !important;
 }
 .ml5 {
   margin-left: 5px !important;
 }
 .ml10 {
   margin-left: 10px !important;
 }
 .ml15 {
   margin-left: 15px !important;
 }
 .ml20 {
   margin-left: 20px !important;
 }
 .ml25 {
   margin-left: 25px !important;
 }
 .ml30 {
   margin-left: 30px !important;
 }
 .ml40 {
   margin-left: 40px !important;
 }
 .ml50 {
   margin-left: 50px !important;
 }
 .mr0 {
   margin-right: 0px !important;
 }
 .mr5 {
   margin-right: 5px !important;
 }
 .mr10 {
   margin-right: 10px !important;
 }
 .mr15 {
   margin-right: 15px !important;
 }
 .mr20 {
   margin-right: 20px !important;
 }
 .mr25 {
   margin-right: 25px !important;
 }
 .mr30 {
   margin-right: 30px !important;
 }
 .mr40 {
   margin-right: 40px !important;
 }
 .mr50 {
   margin-right: 50px !important;
 }
 /* 
 * ------- style base ---------------------
 */
 /*----------------------------
general
-----------------------------*/
 body {
   font-size: 100%;
   line-height: 1.8em;
   font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
   margin: 0;
   padding: 0;
   color: #000;
   background: #fff;
   letter-spacing: 0.05em;
 }
 body.top {
   display: none;
 }
 .container {
   width: 100%;
   margin: 0 auto;
 }
 /* title */
 h1 {
   color: #111;
   letter-spacing: 2px;
   font-weight: normal;
 }
 .content h1, .content h2, .content h3, .content h4, .content h5, .content h6 {
   font-family: "minchouFont", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
   letter-spacing: 3px;
 }
 @media screen and (max-width: 768px) {
   h1, h2, h3, h4, h5, h6 {
     letter-spacing: 0;
   }
 }
 /*----------------------------
header
-----------------------------*/
 header {
   width: 100%;
   height: 60px;
   z-index: 9999;
   position: fixed;
   background: #FFF;
   left: 0;
   top: 0;
 }
 header .logo {
   float: left;
   margin-left: 2%;
   margin-top: 0px;
 }
 header .logo2 {
   z-index: 2;
   float: left;
   background-color: #FFF;
   border: 1px solid #e4e4e4;
   box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.3);
   -moz-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.3);
   -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.3);
 }
 /* header下にライン

.secondary header {
	height:75px;
	border-bottom:1px solid #ececec;
}
 */
 /* navi */
 .fat-nav {
   z-index: 9999;
   position: fixed;
   right: 2%;
   top: 8px;
   padding: 8px;
   width: auto;
   height: auto;
 }
 .fat-nav ul {}
 .fat-nav li {
   margin-left: 1.8em;
   display: inline-block;
   line-height: 1;
   transform: rotate(0.05deg);
   font-weight: bold;
   font-size: 1.1em;
 }
 .fat-nav li a {
   text-decoration: none;
   padding: 5px;
 }
 .fat-nav li .home a {}
 .fat-nav .fa-home {
   font-size: 1.5em;
 }
 .fat-nav li.inq a {
   display: block;
   color: #FFF;
   padding: 8px 18px;
   border-radius: 2px; /* CSS3草案 */
   -webkit-border-radius: 2px; /* Safari,Google Chrome用 */
   -moz-border-radius: 2px; /* Firefox用 */
 }
 .hamburger__icon, .hamburger__icon:before, .hamburger__icon:after {
   background-color: #fff;
 }
 @media screen and (max-width: 768px) {
   .fat-nav li.inq a {
     display: inline;
     padding: 0;
     background: none;
   }
   .fat-nav li.inq a:hover, .fat-nav li a:hover {
     background: none;
     color: #999;
     font-size: 1.4em;
   }
   .fat-nav li.inq a {
     display: inline;
     padding: 0;
     background: none;
   }
   .fat-nav li.inq a:hover, .fat-nav li a:hover {
     color: #999;
     font-size: 1.4em;
   }
   .fat-nav li.inq a, .fat-nav li a, .fat-nav li.inq a:hover {
     background: none !important;
   }
 }
 /*----------------------------
main-area
-----------------------------*/
 main {
   width: 100%;
 }
 .content {
   width: 100%;
   max-width: 1000px;
   margin: 0 auto;
   padding-bottom: 60px;
 }
 .content p {
   transform: rotate(0.05deg);
 }
 .content.map {
   max-width: auto;
 }
 @media screen and (max-width: 768px) {
   .content {
     width: 90%;
     padding-bottom: 30px;
   }
 }
 /*----------------------------
footer
-----------------------------*/
 footer {
   padding: 8px 0 0;
   width: 100%;
 }
 footer .inner {
   width: 90%;
 }
 footer ul {
   float: left;
   padding: 10px 0;
 }
 footer ul li {
   margin-right: 2.5em;
   display: inline-block;
   line-height: 1;
   transform: rotate(0.05deg);
 }
 footer ul li a {
   text-decoration: none;
   padding: 5px;
 }
 footer .totop {
   float: right;
 }
 footer .totop a:hover {
   filter: alpha(opacity=30);
   -moz-opacity: 0.3;
   opacity: 0.3;
 }
 footer .fa-home {
   font-size: 1.3em;
 }
 footer .copyright {
   width: 100%;
   padding: 30px 0;
   text-align: center;
   line-height: 1;
   border-top: 1px solid #d7d7d7;
   transform: rotate(0.05deg);
 }
 /* バナー付 */
 footer .add-banner {
   clear: both;
   width: 100%;
   border-top: 1px solid #d7d7d7;
   padding: 30px 0;
 }
 footer .add-banner .inner-add-banner {
   width: 90%;
   margin: 0 auto;
 }
 footer .add-banner .inner-add-banner .copyright {
   float: left;
   text-align: left;
   border: none;
   padding: 0;
   line-height: 28px;
   box-sizing: border-box;
   width: auto;
   transform: rotate(0.05deg);
 }
 footer .add-banner .inner-add-banner .wrap-banner {
   float: right;
   width: 590px;
   box-sizing: border-box;
 }
 footer .add-banner .inner-add-banner .wrap-banner div {
   display: inline-block;
   margin: 0 5px;
 }
 footer .add-banner .facebook a {
   display: block;
   width: 180px;
   height: 28px;
   background-color: #5770a4;
   background-image: url(../img/common/bnr_bg_fb.png);
   background-position: center center;
   background-repeat: no-repeat;
   text-indent: -9999px;
 }
 footer .add-banner .twitter a {
   display: block;
   width: 180px;
   height: 28px;
   background-color: #4cbee5;
   background-image: url(../img/common/bnr_bg_twitter.png);
   background-position: center center;
   background-repeat: no-repeat;
   text-indent: -9999px;
 }
 footer .add-banner .ameblo a {
   display: block;
   width: 180px;
   height: 28px;
   border: 1px solid #dfdfdf;
   background-color: #FFF;
   background-image: url(../img/common/bnr_bg_ameblo.png);
   background-position: center center;
   background-repeat: no-repeat;
   text-indent: -9999px;
   box-sizing: border-box;
 }
 @media screen and (max-width: 768px) {
   footer ul {
     float: none;
     text-align: center;
   }
   footer .totop {
     float: none;
     text-align: center;
   }
   /* バナー付 */
   footer .add-banner .inner-add-banner .wrap-banner {
     float: none;
     width: 570px;
     margin: 0 auto;
   }
   footer .add-banner .inner-add-banner .wrap-banner div {
     display: inline-block;
     margin-left: 0;
     margin: 0 auto;
   }
   footer .add-banner .inner-add-banner .copyright {
     float: none;
     text-align: center;
     border: none;
     margin-bottom: 0.5em;
     transform: rotate(0.05deg);
   }
 }
 @media screen and (max-width: 640px) {
   footer ul li {
     margin-right: 0;
     display: block;
     line-height: 1.8em;
   }
   /* バナー付 */
   footer .add-banner .inner-add-banner .wrap-banner {
     width: auto;
     margin: 0 auto;
   }
   footer .add-banner .inner-add-banner .wrap-banner div {
     display: block;
     margin-left: 0;
     width: 180px;
     margin: 0 auto;
     margin-bottom: 10px;
   }
 }
 /*----------------------------
others
-----------------------------*/
 #pagetop {
   position: fixed;
   bottom: 80px;
   right: 10px;
   font-size: 12px;
   z-index: 5;
 }
 #pagetop a {
   display: block;
   background-color: rgba(255, 255, 255, 0.5);
   border: #CCC solid 1px;
   text-decoration: none;
   color: #333;
   background-image: url(../img/common/arrow_top.png);
   background-position: center 10px;
   background-repeat: no-repeat;
   padding: 25px 22px 13px;
 }
 #pagetop a:hover {
   background-color: rgba(255, 255, 255, 0.7);
 }
 /* 
 * ------- home ---------------------
 */
 /*----------------------------
visual-cut
-----------------------------*/
 .main-vis {
   width: 100%;
   z-index: 0;
   position: relative;
   height: 0;
   background-repeat: no-repeat;
   background-position: center top;
   background-size: contain;
   /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
   padding-top: 42.343%;
   margin-top: 60px;
 }
 /* 鉄瓶 */
 .vis1 {
   background-image: url(../img/top/vis01.jpg);
 }
 /* 梅の花 */
 .vis2 {
   background-image: url(../img/top/vis02.jpg);
 }
 /* ろくろ */
 .vis3 {
   background-image: url(../img/top/vis03.jpg);
 }
 /* 茶碗 */
 .vis4 {
   background-image: url(../img/top/vis04.jpg);
 }
 /* 鉄瓶用キャッチ */
 /* 梅の花キャッチ */
 .vis1 .catch, .vis2 .catch, .vis4 .catch {
   position: relative;
   text-align: left;
   margin-top: -38%;
   padding-left: 18%;
   font-size: 2.3vw;
   line-height: 1.6em;
   height: 20em !important;
   -ms-writing-mode: tb-rl; /* for MS IE8+ */
   -webkit-writing-mode: vertical-rl;
   writing-mode: vertical-rl;
   color: #FFF;
   letter-spacing: 0.2em;
   font-family: "minchouFont";
 }
 /* ろくろキャッチ */
 .vis3 .catch {
   position: relative;
   text-align: left;
   margin-top: -38%;
   padding-left: 46%;
   font-size: 2.5vw;
   line-height: 1.4em;
   height: 14em;
   letter-spacing: 0.2em;
   -ms-writing-mode: tb-rl; /* for MS IE8+ */
   -webkit-writing-mode: vertical-rl;
   writing-mode: vertical-rl;
   color: #FFF;
   font-family: "minchouFont";
 }
 /*----------------------------
ブラウザ判別
-----------------------------*/
 /* Edge */
 .edge .vis1 .catch, .edge .vis2 .catch, .edge .vis3 .catch, .edge .vis4 .catch {
   position: absolute;
 }
 /* IE */
 .ie .vis1 .catch, .ie .vis2 .catch, .ie .vis3 .catch, .ie .vis4 .catch {
   position: absolute;
 }
 @media screen and (max-width: 768px) {
   /* 鉄瓶キャッチ */
   /* 梅の花キャッチ */
   /* 茶碗キャッチ */
   .vis1 .catch, .vis2 .catch, .vis4 .catch {
     margin-top: -30%;
     padding-left: 5%;
     font-weight: bold;
     font-size: 3.6vw;
     -ms-writing-mode: lr-tb; /* for MS IE8+ */
     -webkit-writing-mode: horizontal-tb;
     writing-mode: horizontal-tb;
     transform: rotate(0.05deg);
   }
   /* ろくろ */
   .vis3 .catch {
     margin-top: -26%;
     padding-left: 0;
     font-weight: bold;
     text-align: center;
     font-size: 3.4vw;
     -ms-writing-mode: lr-tb; /* for MS IE8+ */
     -webkit-writing-mode: horizontal-tb;
     writing-mode: horizontal-tb;
     transform: rotate(0.05deg);
   }
 }
 /*----------------------------
pickup1
-----------------------------*/
 .pickup1 {
   width: 100%;
   background-image: url(../img/top/bg_pick1.jpg);
   background-position: center top;
 }
 .pickup1 .inner {
   width: 100%;
   box-sizing: border-box;
   padding: 26px 2% 24px;
 }
 .pickup1 h1 {
   font-size: 3.5vw;
   line-height: 1em;
   margin: 0 0 20px;
   padding: 0;
   text-align: center;
 }
 .pickup1 p {
   width: 60%;
   margin: 0 auto;
   margin-bottom: 1.2em;
   transform: rotate(0.05deg);
 }
 .pickup1 h1, .pickup1 p {
   color: #FFF;
 }
 .pickup1 .btn {
   text-align: center;
 }
 .pickup1 .btn a {
   display: inline-block;
   border: 1px solid #FFF;
   padding: 5px 56px;
   color: #FFF;
   text-decoration: none;
   box-sizing: border-box;
   transform: rotate(0.05deg);
 }
 .pickup1 .btn a:hover {
   color: #222;
   background-color: rgba(255, 255, 255, 0.7);
 }
 @media screen and (max-width: 768px) {
   .pickup1 h1 {
     font-size: 4.5vw;
   }
   .pickup1 p {
     width: 90%;
   }
 }
 @media screen and (max-width: 400px) {
   .pickup1 h1 {
     font-size: 6vw;
   }
 }
 /*----------------------------
inquiry set
-----------------------------*/
 .inqset {
   width: 100%;
   border-bottom: 1px solid #d7d7d7;
   padding: 16px 0;
   margin-bottom: 60px;
   transform: rotate(0.05deg);
 }
 .inqset .inner {
   width: 90%;
   margin: 0 auto;
 }
 .inqset .inner .tel {
   line-height: 1.2em;
   float: left;
   transform: rotate(0.05deg);
 }
 .inqset .inner .tel .number {
   margin-left: 0.5em;
   font-size: 2em;
   font-family: "minchouFont";
   vertical-align: -4px;
 }
 .inqset .inner .tel .number:before {
   content: url(../img/common/icn_tel.png);
   left: -5px;
   top: -2px;
   position: relative;
 }
 .inqset .inner .form {
   float: right;
 }
 .inqset .inner .form a {
   padding: 4px 3vw 4px 2vw;
   color: #FFF;
   text-decoration: none;
   border-radius: 2px; /* CSS3草案 */
   -webkit-border-radius: 2px; /* Safari,Google Chrome用 */
   -moz-border-radius: 2px; /* Firefox用 */
 }
 .inqset .inner .form a:before {
   content: url(../img/common/icn_mail.png);
   left: -1.4vw;
   top: 1px;
   position: relative;
 }
 @media screen and (max-width: 1023px) {
   .inqset .inner .tel, .inqset .inner .form {
     float: none;
     text-align: center;
   }
   .inqset .inner .form a {
     background-color: #222;
     padding: 6px 10px;
     color: #FFF;
     text-decoration: none;
   }
   .inqset .inner .form a:before {
     content: url(../img/common/icn_mail.png);
     left: -3px;
     top: 1px;
     position: relative;
   }
   .inqset .inner .tel {
     margin-bottom: 0.8em;
   }
   .inqset .inner .tel .number {
     margin-left: 11px;
     line-height: 1.3em;
   }
 }
 @media screen and (max-width: 640px) {
   .inqset {
     margin-bottom: 0;
   }
 }
 /*----------------------------
pickup2 pickup3
-----------------------------*/
 .pickupsecInner {
   padding-bottom: 40px;
 }
 .pickup2 {
   float: left;
   width: 50%;
   padding: 8px 4%;
   box-sizing: border-box;
   border-right: 1px #111 solid;
 }
 .pickup3 {
   float: right;
   width: 50%;
   padding: 8px 4%;
   box-sizing: border-box;
 }
 .pickup2 h1, .pickup3 h1 {
   font-size: 1.9em;
   text-align: center;
   margin-bottom: 1em;
   font-family: "minchouFont";
 }
 .pickup2 p, .pickup3 p {
   margin-bottom: 1.5em;
   transform: rotate(0.05deg);
 }
 .pickup2 .btn, .pickup3 .btn {
   text-align: center;
   line-height: 1;
 }
 .pickup2 .btn a, .pickup3 .btn a {
   display: inline-block;
   border: 1px solid #222;
   padding: 8px 42px;
   text-decoration: none;
   box-sizing: border-box;
   transform: rotate(0.05deg);
 }
 .pickup2 .btn a:hover, .pickup3 .btn a:hover {
   color: #FFF;
   background-color: #222;
 }
 @media screen and (max-width: 640px) {
   .pickup2, .pickup3 {
     float: none;
     width: 100%;
     padding: 8px 4%;
   }
   .pickup2 {
     border-right: none;
     border-bottom: 1px #111 solid;
   }
   .pickup2 .btn, .pickup3 .btn {
     margin-bottom: 30px;
   }
   .pickupsecInner {
     padding-bottom: 10px;
   }
 }
 /*----------------------------
news company-data
-----------------------------*/
 .lower-bar {
   clear: both;
   width: 100%;
   background-color: #f1f2f3;
   background-image: url(../img/common/bg_bar.png);
   background-position: right bottom;
   background-repeat: no-repeat;
 }
 .lower-bar .inner {
   padding: 28px 0;
   width: 90%;
 }
 .lower-bar .inner .news {
   padding: 0 3em 0 0;
   float: left;
   max-height: 160px;
   overflow: auto;
   box-sizing: border-box;
   transform: rotate(0.05deg);
 }
 .lower-bar .inner .news h1 {
   font-size: 1.3em;
   line-height: 1;
   margin: 0 0 1em;
   font-weight: bold;
   font-family: "minchouFont";
 }
 .lower-bar .inner .news dl {}
 .lower-bar .inner .news dl dt {
   clear: both;
   float: left;
   width: 5em;
 }
 .lower-bar .inner .news dl dd {}
 .lower-bar .inner .news dl dt, .lower-bar .inner .news dl dd {
   line-height: 1.2em;
   padding: 0.2em 0;
 }
 .lower-bar .company_data {
   float: left;
   box-sizing: border-box;
   padding-left: 30px;
   transform: rotate(0.05deg);
 }
 .lower-bar .company_data .name {
   font-size: 1.1em;
   float: left;
   padding: 0 1em 0 0;
   margin-left: 20px;
 }
 .lower-bar .company_data .data {
   float: left;
   padding: 0 0 0 1.5em;
   border-left: 1px dotted #666;
 }
 .lower-bar .company_data .data .telno, .lower-bar .company_data .data .faxno {
   display: inline-block;
   padding: 0 1em 0 0;
 }
 .lower-bar .inqset {
   width: auto;
   border: none;
   padding: 0 0;
   margin: 0;
   float: left;
 }
 .lower-bar .inqsetr .tel {
   float: none;
 }
 .lower-bar .inqset .tel .number {
   margin-left: 0.5em;
   font-size: 2em;
   font-family: 'Noto Sans Japanese', sans-serif;
   vertical-align: -4px;
 }
 .lower-bar .inqset .tel .number:before {
   content: url(../img/common/icn_tel.png);
   left: -5px;
   top: -2px;
   position: relative;
 }
 .lower-bar .inqset .form {
   float: none;
   margin-top: 1em;
 }
 .lower-bar .inqset .form a {
   padding: 4px 3vw 4px 2vw;
   color: #FFF;
   text-decoration: none;
   border-radius: 2px; /* CSS3草案 */
   -webkit-border-radius: 2px; /* Safari,Google Chrome用 */
   -moz-border-radius: 2px; /* Firefox用 */
 }
 .lower-bar .inqset .form a:before {
   content: url(../img/common/icn_mail.png);
   left: -1.4vw;
   top: 1px;
   position: relative;
 }
 @media screen and (max-width: 1023px) {
   .lower-bar .inner .news {
     padding: 0;
     float: none;
     max-height: none;
     overflow: auto;
     margin-bottom: 20px;
   }
   .lower-bar .inner .news dl dt {
     float: none;
     width: auto;
   }
   .lower-bar .inner .news dl dd {
     border-bottom: 1px dotted #CCC;
     padding-bottom: 0.5em;
     margin-bottom: 0.5em;
   }
   .lower-bar .inner .news dl dt, .lower-bar .inner .news dl dd {
     line-height: 1.4em;
   }
   .lower-bar .company_data {
     float: none;
     padding-left: 0;
     background-color: rgba(255, 255, 255, 0.7);
     padding: 10px;
   }
   .lower-bar .company_data .name {
     float: none;
     padding: 0;
     text-align: center;
   }
   .lower-bar .company_data .data {
     float: none;
     border-left: none;
     text-align: center;
   }
   .lower-bar .company_data .data .telno, .lower-bar .company_data .data .faxno {
     display: inline-block;
     padding: 0 0.5em 0 0.5em;
   }
   .lower-bar .inqset {
     float: none;
   }
   .lower-bar .inqset .tel, .lower-bar .inqset .form {
     float: none;
     text-align: center;
   }
   .lower-bar .inqset .form {
     margin-bottom: 20px;
   }
 }
 @media screen and (max-width: 400px) {
   .lower-bar .company_data .data .telno, .lower-bar .company_data .data .faxno {
     display: block;
     padding: 0;
   }
 }
 /* 
 * ------- secondary contents ---------------------
 */
 /* title */
 .titlebar {
   width: 100%;
   height: 190px;
   background-color: #6b6865;
   background-image: url(../img/common/bg_titlebar.jpg);
   background-repeat: no-repeat;
   margin-top: 60px;
   margin-bottom: 80px;
   background-position: center -20px;
 }
 .titlebar .inner {
   width: 90%;
   margin: 0 auto;
   position: relative;
   top: 50%;
   transform: translateY(-30%);
 }
 .titlebar .inner h1 {
   color: #FFF;
   position: relative;
   top: 50%;
   -webkit-transform: translateY(-50%); /* Safari用 */
   transform: translateY(-30%);
   margin: 0;
   padding: 0;
   text-align: center;
   line-height: 1;
   font-size: 3em;
   letter-spacing: 0.1em;
   font-family: "minchouFont";
 }
 .content h2 {
   font-size: 2.6em;
   text-align: center;
   margin-bottom: 2em;
   font-family: "minchouFont", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
 }
 .content h3 {
   font-size: 1.4em;
   line-height: 1.3em;
   text-align: center;
   margin-bottom: 2em;
   position: relative;
 }
 .content h3::after {
   position: absolute;
   bottom: -16px;
   left: 50%;
   z-index: 1;
   content: '';
   display: block;
   height: 3px;
   background: #dcdcdc;
   width: 120px;
   margin-left: -60px;
 }
 /* h3左寄せ */
 .content h3.tx-left {
   text-align: left;
 }
 .content h4 {
   font-size: 1.1em;
   font-weight: bold;
   margin-bottom: 1em;
   transform: rotate(0.05deg);
 }
 /* h4中央 */
 .content h4.tx-center {
   text-align: center;
 }
 /* h3PCで左、タブレット中央 */
 .content h3.tx-flex, .content h4.tx-flex {
   text-align: left;
 }
 @media screen and (max-width: 768px) {
   .content h3.tx-flex, .content h4.tx-flex {
     text-align: center;
   }
 }
 @media screen and (max-width: 768px) {
   .titlebar {
     background-size: cover;
     background-position: center 0;
   }
   .titlebar .inner h1 {
     font-size: 2.6em;
   }
   .content h2 {
     font-size: 2.4em;
   }
 }
 @media screen and (max-width: 400px) {
   .titlebar {
     height: 140px;
   }
   .titlebar .inner {
     width: 96%;
   }
   .titlebar .inner h1 {
     font-size: 2em;
     letter-spacing: 0em;
   }
   .content h2 {
     font-size: 1.8em;
   }
 }
 /* txt */
 a:link, a:visited {
   -webkit-transition: all 0.5s;
   -moz-transition: all 0.5s;
   transition: all 0.5s;
   ;
 }
 .txtbold {
   font-weight: bold;
 }
 .txtstyle1 {
   font-size: 1.16em;
   font-weight: bold;
 }
 .txtstyle2 {
   font-size: 1.24em;
   font-weight: bold;
 }
 .txtslow {
   line-height: 2.3;
 }
 .sp, .ssp {
   display: none;
 }
 .tx-center {
   text-align: center;
 }
 .tx-left {
   text-align: left;
 }
 .tx-flex {
   text-align: center;
 }
 .tx-em {
   background: linear-gradient(transparent 62%, rgba(255, 250, 137, 0.71) 0%);
 }
 @media screen and (max-width: 768px) {
   .tx-flex {
     text-align: left; /*PCで中央、スマホタブレット左寄せ*/
   }
 }
 .btn a {
   -webkit-transition: all 0.7s;
   -moz-transition: all 0.7s;
   transition: all 0.7s;
 }
 .caption {
   font-weight: bold;
   margin-top: 10px;
 }
 .before, .after {
   position: relative;
 }
 .before::after {
   position: absolute;
   content: " ";
   display: inline-block;
   background: url(../img/common/watermark_before.png);
   background-repeat: no-repeat;
   background-size: contain;
   z-index: 1;
 }
 .after::after {
   position: absolute;
   content: " ";
   display: inline-block;
   background: url(../img/common/watermark_after.png);
   background-repeat: no-repeat;
   background-size: contain;
   z-index: 1;
 }
 @media screen and (max-width: 768px) {
   .sp {
     display: block;
   }
   .ssp {
     display: none;
   }
   .pc {
     display: none;
   }
 }
 @media screen and (max-width: 400px) {
   .ssp {
     display: block;
   }
 }
 /* 「※」付きなど用の文字インデント */
 .ex {
   padding-left: 1em; /*1em（1文字）分、右に動かす*/
   text-indent: -1em; /*最初の行だけ1em（1文字）分、左に動かす*/
   margin-bottom: 0.4em;
   line-height: 1.3em;
   font-size: 0.9em;
 }
 .ex span {
   color: #bc2d2d;
 }
 /* 下線 */
 .underline {
   text-decoration: underline;
 }
 /* number */
 .r-number {
   width: 78px;
   height: 78px;
   background-color: #222;
   border-radius: 50%;
   color: #FFF;
   text-align: center;
   margin: 0 auto;
   margin-bottom: 30px;
   line-height: 82px;
   font-size: 46px;
 }
 .small-writeup {
   border: 1px solid #dadada;
   padding: 40px;
   width: 100%;
   box-sizing: border-box;
   margin-bottom: 40px;
 }
 .content .small-writeup h3 {
   font-size: 1.4em;
   margin-bottom: 1em;
 }
 .content .small-writeup h3::after {
   position: relative;
   background: none;
   bottom: 0;
 }
 @media screen and (max-width: 768px) {
   .r-number {
     width: 46px;
     height: 46px;
     line-height: 50px;
     font-size: 30px;
   }
   .small-writeup {
     padding: 20px;
     margin-bottom: 30px;
   }
 }
 /* pic */
 .content img {
   width: auto;
   max-width: 100%;
 }
 .content .pic-full img {
   width: 100%;
   text-align: center;
 }
 /* アンカーのずれを調整 */
 #anchor1, #anchor2, #anchor3 {
   margin-top: -60px;
   padding-top: 60px;
 }
 /*----------------------------
table
-----------------------------*/
 table {
   border-collapse: collapse;
   border-spacing: 0;
 }
 td, th {
   padding: 0;
   transform: rotate(0.05deg);
 }
 /* 普通 */
 table {
   width: 100%;
   margin-bottom: 3.5em;
 }
 table tr {}
 table th {
   padding: 8px;
   border: 1px #dadada solid;
   font-weight: bold;
   text-align: left;
   background-color: #EEE;
   font-weight: bold;
 }
 table td {
   padding: 8px;
   border: 1px #ddd solid;
   font-weight: normal;
 }
 /* 線のtable */
 table.table-various1 {
   width: 100%;
   padding-top: 1.5em;
 }
 table.table-various1 caption {
   display: none;
 }
 table.table-various1 tr {}
 table.table-various1 th {
   padding: 9px 5px;
   border: none;
   border-bottom: 1px #dadada solid;
   background-color: transparent;
   text-align: left;
 }
 table.table-various1 th span {
   color: #333;
   font-weight: normal;
   padding-top: 0.3em;
   display: block;
 }
 table.table-various1 th .cap {
   display: inline-block;
 }
 table.table-various1 caption {
   text-align: right;
   padding: 0;
   margin: 0;
   line-height: 1;
 }
 table.table-various1 td {
   padding: 9px 5px;
   border: none;
   border-bottom: 1px #ddd solid;
   font-weight: normal;
   text-align: left;
 }
 /* 横長のtable */
 .table-various2 {
   width: 100%;
 }
 /* 横→縦 */
 table.table-various3 th {
   text-align: center;
 }
 table.table-various3 td {}
 /*table.table-various3 td:first-child {
	text-align: left;
}*/
 @media only screen and (max-width: 768px) {
   table {
     border-top: 1px #ddd solid;
   }
   table th {
     display: block;
     border-top: none;
     border-bottom: none;
   }
   table td {
     display: block;
   }
   table.table-various1 {
     position: relative;
     border-top: none;
   }
   table.table-various1 th {
     border-bottom: none;
     background-color: #eee;
     box-sizing: border-box;
     padding: 5px;
   }
   table.table-various1 td {
     border-bottom: none;
     box-sizing: border-box;
     padding: 5px 5px 20px;
   }
   /* 横長（保留）

.table-various2 {
	min-width:768px;
	overflow:scroll;
}



.table-various2 table th {
	display:table-cell;
	 border-top: 1px #ddd solid;
 border-bottom: 1px #ddd solid;
}

.table-various2 table td {
 display:table-cell;
}

 */
   table.table-various3 {
     display: block;
     border-top: none;
     width: 100%;
   }
   table.table-various3 thead {
     display: block;
     float: left;
     border-bottom: 1px #ddd solid;
   }
   table.table-various3 tbody {
     display: block;
     width: auto;
     position: relative;
     overflow-x: auto;
     white-space: nowrap;
     border-right: solid;
   }
   table.table-various3 th {
     display: block;
     width: auto;
     border-top: 1px #ddd solid;
     border-bottom: none;
     border-right: 1px #ddd solid;
     width: auto;
   }
   table.table-various3 tbody tr {
     display: inline-block;
     vertical-align: top;
     margin: 0 -3px;
   }
   table.table-various3 td {
     display: block;
     border-bottom: none;
     text-align: left;
     border-left: none;
   }
 }
 /*----------------------------
flow
-----------------------------*/
 .flow-down {
   background-image: url(../img/common/bg_flow_down.gif);
   background-position: center bottom;
   background-repeat: no-repeat;
   margin-bottom: 50px;
   padding-bottom: 70px;
   width: 100%;
 }
 .flow-down.first {
   position: relative;
   padding-top: 30px;
 }
 .flow-down.first::before {
   position: absolute;
   top: 0;
   left: 0;
   z-index: 1;
   content: '';
   display: block;
   height: 1px;
   background: #d5d5d5;
   width: 100%;
 }
 .flow-end {}
 .flow-down h3, .flow-end h3 {
   font-size: 1.6em;
   margin-bottom: 1.5em;
 }
 .flow-down h3::after, .flow-end h3::after {
   position: absolute;
   bottom: -20px;
   left: 50%;
   z-index: 1;
   content: '';
   display: block;
   height: 4px;
   width: 100px;
   background: #292929;
   margin-left: -50px;
   border-radius: 4px;
 }
 /*----------------------------
faq
-----------------------------*/
 .faq {
   margin-bottom: 50px;
 }
 .content .faq h3 {
   font-size: 1.4em;
   text-align: left;
   padding-left: 44px;
   position: relative;
 }
 /*　人のアイコンバージョン
.content .faq h3 {
	font-size:1.4em;
	background-image:url(../img/common/icn_human.png);
	background-position:0 2px;
	background-repeat:no-repeat;
	background-size:20px;
	padding-left:28px;
	text-align:left;
}

*/
 .content .faq h3::before {
   content: "Q";
   font-family: "Courier New", Courier, monospace;
   position: absolute;
   width: 32px;
   height: 32px;
   left: 2px;
   top: -1px;
   background-color: #222;
   border-radius: 50%;
   color: #FFF;
   text-align: center;
   line-height: 28px;
   font-size: 28px;
 }
 .content .faq h3::after {
   position: absolute;
   bottom: -16px;
   left: 0;
   z-index: 1;
   content: '';
   display: block;
   height: 2px;
   background: #dcdcdc;
   width: 100%;
   margin-left: 0;
 }
 .content .faq .answer {
   padding-left: 44px;
   position: relative;
   box-sizing: border-box;
 }
 .content .faq .answer::before {
   content: "A";
   font-family: "Courier New", Courier, monospace;
   position: absolute;
   width: 32px;
   height: 32px;
   left: 2px;
   background-color: #BBB;
   border-radius: 50%;
   color: #FFF;
   text-align: center;
   line-height: 28px;
   font-size: 28px;
 }
 .content .faq .pic {}
 /*----------------------------
map
-----------------------------*/
 .map {
   margin-bottom: 60px;
 }
 .map h2 {
   font-size: 2.6em;
   text-align: center;
   margin-bottom: 2em;
 }
 /*----------------------------
inquiry 
-----------------------------*/
 .inquiry table {
   background-color: #e3e3e3;
   empty-cells: show;
   width: 100%;
   line-height: 1.3em;
   border-spacing: 0px;
   margin-bottom: 1.5em;
   padding: 20px 0;
   list-style-type: none;
   box-sizing: border-box;
 }
 .inquiry table th {
   padding: 12px 36px 12px 0;
   border: none;
   border-bottom: 1px solid #FFF;
   text-align: right;
   font-weight: bold;
   vertical-align: top;
   width: 33%;
   line-height: 2.2em;
   box-sizing: border-box;
   background-color: #e3e3e3;
 }
 .inquiry table td {
   padding: 12px 5px 12px 0;
   border: none;
   border-bottom: 1px solid #FFF;
   text-align: left;
   box-sizing: border-box;
   background-color: #e3e3e3;
 }
 .inquiry table td .select {
   margin-bottom: 0.5em;
 }
 .inquiry table td .select li {
   float: left;
   margin-right: 20px;
 }
 .inquiry table td .select li input {
   vertical-align: middle;
 }
 .inquiry table td label {
   padding: 0 0 0px 5px;
 }
 .inquiry table span {
   color: #ff0000;
 }
 .inquiry table input {
   margin: 2px 0 2px 0;
   height: 1.6em;
   border: 1px solid #DDD;
 }
 .inquiry .formBtn {
   width: 100%;
   text-align: center;
   margin-bottom: 30px;
 }
 .inquiry .btnSend {
   background-color: #292929;
   color: #FFF;
   padding: 5px 0;
   margin: 0 5px 0 5px;
   border: 0;
   width: 160px;
   box-sizing: border-box;
   border-radius: 2px;
 }
 .inquiry .btnReset {
   background-color: #FFF;
   padding: 5px 0;
   margin: 0 5px 0 5px;
   border: 0;
   border: 1px solid #292929;
   width: 160px;
   box-sizing: border-box;
   border-radius: 2px;
 }
 .inquiry .forml {
   width: 90%;
 }
 .inquiry .formm {
   width: 50%;
 }
 .inquiry .tel {
   text-align: center;
   font-size: 3em;
   font-family: 'Noto Sans Japanese', sans-serif;
   margin-bottom: 1em;
 }
 @media only screen and (max-width: 768px) {
   .inquiry table {
     width: 100%;
     margin: 0 0 3% 0;
     padding: 10px 0;
     box-sizing: border-box;
   }
   .inquiry table tr {
     display: block;
   }
   .inquiry table th {
     display: list-item;
     padding: 10px 10px 5px;
     border-bottom: none;
     text-align: left;
     font-weight: bold;
     vertical-align: top;
     width: 100%;
     line-height: 1em;
     box-sizing: border-box;
     background-color: #EEE;
   }
   .inquiry table td {
     display: list-item;
     width: 100%;
     border-bottom: 1px #FFF solid;
     font-weight: normal;
     padding: 5px 10px 10px 10px;
   }
   .inquiry .forml {
     width: 100%;
   }
   .inquiry .formm {
     width: 100%;
   }
   .inquiry .btnSend {
     width: 100px;
   }
   .inquiry .btnReset {
     width: 100px;
   }
 }
 .inquiry p {
   text-align: center;
 }
 @media only screen and (max-width: 640px) {
   .inquiry .tel {
     font-size: 2.6em;
   }
   .inquiry p {
     text-align: left;
   }
 }
 /*----------------------------
list
-----------------------------*/
 .content ul li, .content ol li {
   transform: rotate(0.05deg);
 }
 .content ul.circle, .content ul.check {
   position: relative;
 }
 .content ul.circle li {
   padding: 0 0 0.5em 1.2em;
   margin-bottom: 0.7em;
   border-bottom: 1px dashed #CCC;
 }
 .content ul.check li {
   padding: 0 0 0.5em 1.6em;
   margin-bottom: 0.7em;
   border-bottom: 1px dashed #CCC;
 }
 .content ul.circle li:before {
   position: absolute;
   content: "";
   width: 6px;
   height: 6px;
   background-color: #222;
   border-radius: 50%;
   left: 0.5em;
   margin-top: 0.6em;
 }
 .content ul.check li::before {
   position: absolute;
   content: "\f14a";
   font-family: FontAwesome;
   left: 0.3em;
   font-size: 1.3em;
 }
 .content ol.number-list {
   display: block;
   list-style-position: outside;
 }
 .content ol.number-list li {
   list-style-type: decimal;
   padding: 0 0 0 10px;
   margin-bottom: 1em;
   margin-left: 2em;
 }
 /*----------------------------
variable grid
-----------------------------*/
 .one_half, .one_third, .two_third, .one_quarter, .two_quarter, .three_quarter, .one_fifth, .two_fifth, .three_fifth, .four_fifth, .one_sixth, .two_sixth, .three_sixth, .four_sixth, .five_sixth {
   display: inline;
   float: left;
   margin: 0 0 0 5%;
   list-style: none;
 }
 .one_half:first-child, .one_third:first-child, .two_third:first-child, .one_quarter:first-child, .two_quarter:first-child, .three_quarter:first-child, .one_fifth:first-child, .two_fifth:first-child, .three_fifth:first-child, .four_fifth:first-child, .one_sixth:first-child, .two_sixth:first-child, .three_sixth:first-child, .four_sixth:first-child, .five_sixth:first-child {
   margin-left: 0;
 }
 .first {
   margin-left: 0;
   clear: left;
 }
 /*Half Grid*/
 .one_half {
   width: 47.5%;
 }
 /*Third Grid*/
 .one_third {
   width: 30%;
 }
 .two_third {
   width: 65%;
 }
 /*Quarter Grid*/
 .one_quarter {
   width: 21.25%;
 }
 .two_quarter {
   width: 47.5%;
 } /* Same as one_half */
 .three_quarter {
   width: 73.75%;
 }
 /*Fifth Grid*/
 .one_fifth {
   width: 16%;
 }
 .two_fifth {
   width: 37%;
 }
 .three_fifth {
   width: 58%;
 }
 .four_fifth {
   width: 79%;
 }
 /*Sixth Grid*/
 .one_sixth {
   width: 12.5%;
 }
 .two_sixth {
   width: 30%;
 } /* Same as one_third */
 .three_sixth {
   width: 47.5%;
 } /* Same as one_half */
 .four_sixth {
   width: 65%;
 } /* Same as two_third */
 .five_sixth {
   width: 82.5%;
 }
 @media screen and (max-width: 768px) {
   .one_half, .one_third, .two_third, .one_quarter, .two_quarter, .three_quarter, .one_fifth, .two_fifth, .three_fifth, .four_fifth, .one_sixth, .two_sixth, .three_sixth, .four_sixth, .five_sixth {
     margin: 0 0 3em 0;
   }
   .one_half, .one_third, .two_third, .one_quarter, .two_quarter, .three_quarter, .one_fifth, .two_fifth, .three_fifth, .four_fifth, .one_sixth, .two_sixth, .three_sixth, .four_sixth, .five_sixth {
     width: 100%;
   }
 }