@charset "utf-8";
img[src*="analytics.global-websystem.net"] {
    position: absolute;
    left: -100px;
    bottom: -100px;
}

/* common
-----------------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, font, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table.table, caption, tbody, tfoot, thead {
border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}
ol, ul {list-style: none;}
table.table {border-collapse: separate;border-spacing: 0;}
caption {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img{border: 0;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
display: block;
}

html {
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
}


body {
position: relative;
color:#000;
font-family: 'Noto Sans JP', "メイリオ", sans-serif;
font-size: 100%;
font-size: 16px;
font-weight: 300;
letter-spacing: 1px;
background: #f1ead9;
}
.clearfix:after {
content: ".";
display: block;
clear: both;
height: 0;
visibility: hidden;
}
.clearfix {
display: inline-block;
overflow:hidden;
}
img {
vertical-align: bottom;
}


/* リンク設定
------------------------------------------------------------*/
a{color:#000;text-decoration:none;}
a:hover{color:#333;text-decoration: underline;}
a:active, a:focus {outline:0;}



/* 全体
------------------------------------------------------------*/
.inner {
width:100%;
margin:0 auto;
clear: both;
}
@media only screen and (min-width: 767px){
.inner {
width: 1200px;
}
}
@media only screen and (max-width: 767px){
.inner {
width: 94%;
}
}


/* contents
*************/
#contents {
position: relative;
width: 100%;
height: auto;
clear: both;
}
#contents .contents {
width: 100%;
margin: 0 auto 0 auto;
}
#contents .inner {
width: 100%;
margin: 0 auto;
}
@media only screen and (min-width: 1200px){
#contents {
padding: 150px 0 0 0;
}
#contents .contents {
width: 1050px;
}
#contents .inner {
width: 1050px;
}
}
@media only screen and (max-width:1200px){
#contents {
padding: 150px 0 0 0;
}
#contents .contents {
width: 100%;
}
#contents .inner {
width: 94%;
}
}
@media only screen and (max-width: 767px){
#contents {
padding: 100px 0 0 0;
}
}



/* 画像自動縮小
*************/
#header img,
#footer img,
#top img,
#top1 img,
#top2 img,
#top3 img,
#top4 img,
#topbn img,
.page-visual-ttl img,
#title img,
#bn_contact img,
#contact2 img,
.content8 img,
.block1 img,
.block2 img,
.block3 img,
.block4 img,
.block5 img,
.logo img,
.box_line img,
.images img,
.stepr img,
.stepl img,
.boxbeaf img,
.ribbon11-wrapper img,
.block img,
.wrap1 img,
.wrap2 img,
.wrap3 img,
.wrap4 img,
.wrap5 img,
.wrap6 img,
.wrap7 img,
.wrap8 img,
.wrap9 img,
.col1 img,
.col2 img,
.col3 img,
.col4 img,
.col5 img,
.listcol2 img,
.listcol3 img,
.listcol4 img {
max-width:100%;
height:auto;
}

/* フォント
*************/
/* fontsize */
.fontsize9 {
font-size: 9px;
line-height: 1.5em;
}
.fontsize11 {
font-size: 11px;
line-height: 1.5em;
}
.fontsize12 {
font-size: 12px;
line-height: 1.5em;
}
.fontsize13 {
font-size: 13px;
line-height: 1.5em;
}
.fontsize14 {
font-size: 14px;
}
.fontsize15 {
font-size: 15px;
line-height: 1.5em;
}
.fontsize16 {
font-size: 16px;
line-height: 1.5em;
}
.fontsize17 {
font-size: 17px;
line-height: 1.5em;
}
.fontsize18 {
font-size: 18px;
line-height: 1.5em;
}
.fontsize20 {
font-size: 20px;
line-height: 1.5em;
}
.fontsize22 {
font-size: 22px;
line-height: 1.5em;
}
.fontsize24 {
font-size: 24px;
line-height: 1.5em;
}
.fontsize26 {
font-size: 26px;
line-height: 1.5em;
}
.fontsize28 {
font-size: 28px;
line-height: 1.5em;
}
.fontsize30 {
font-size: 30px;
line-height: 1.5em;
}
.fontsize40 {
font-size: 40px;
line-height: 1.5em;
}
.lightheight1 {
line-height: 1.5em;
}
.lightheight2 {
line-height: 2em;
}
.lightheight3 {
line-height: 1.2em;
}



/* fontcolor */
.fontred {
color: #e40003;
}
.fontpink {
color: #e67c73;
}
.fontskyblue{
color: #039be5;
}
.fontblue {
color: #0e3c77;
}
.fontorange {
color: #ed5239;
}
.fontgreen {
color: #51cc91;
}

.strong {
font-weight: bold;
}

.lineb {
padding: 0 0 10px 0;
margin: 0 0 10px 0;
font-size: 20px;
font-weight: 400;
border-bottom: 1px solid #666;
}


/* fontfamily */
.family1 {
font-family: 'YuMinB';
}
.family2 {
font-family: 'Dinpro';
}
.family3 {
font-family: 'Futura';
}
.family4 {
font-family: 'A1Mincho';
}


@import url(‘https://fonts.googleapis.com/css?family=Noto+Sans+JP’);
.noto100 {font-weight:100;}
.noto300 {font-weight:300;}
.noto350 {font-weight:350;}
.noto400 {font-weight:400;}
.noto500 {font-weight:500;}
.noto600 {font-weight:600;}
.noto700 {font-weight:700;}
.noto900 {font-weight:900;}

@media all and (-ms-high-contrast: none) {

 .noto600 {font-weight:bold;}
.noto700 {font-weight:bold;}
.noto900 {font-weight:bold;}
}
/* レイアウト
*************/
.left {
text-align: left;
}
.left2 {
float: left;
}
.right {
text-align: right;
}
.right2 {
float: right;
}
.center {
text-align: center;
}
.alignleft{
float:left;
clear:left;
margin:0px 20px 20px 0px;
}
.aligncenter{
display: block;
margin-left: auto;
margin-right: auto;
padding: 0px 0px 10px 0px;
}
.alignright{
float:right;
clear:right;
margin:0px 0 20px 20px;
}



/* 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;}
.mt70 {margin-top : 70px !important;}
.mt80 {margin-top : 80px !important;}
.mb5 {margin-bottom : 5px !important;}
.mb10 {margin-bottom : 10px !important;}
.mb20 {margin-bottom : 20px !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;}
.mb8 {margin-bottom : 8% !important;}
.mr10 {margin-right: 10px !important;}
.mt-80 {margin-top: -80px!important;}


/* section
*************/
* html section.content article{height:1%;}

section.content {
width: 100%;
padding: 0 0 0 0;
margin: 0 0 100px 0;
line-height: 1.8em;
overflow: hidden;
text-align: left;
clear: both;
}
section.content2 {
width: 103%;
padding: 0 0 0 0;
margin: 0 0 100px 0;
overflow: hidden;
clear: both;
}
section.content3 {
width: 100%;
padding: 0 0 0 0;
margin: 0 0 100px 0;
line-height: 1.8em;
text-align: left;
clear: both;
}
section.content4 {
width: 103%;
padding: 0 0 0 0;
margin: 0 0 50px 0;
clear: both;
}
section.content5 {
width: 100%;
padding: 0 0 0 0;
margin: -7% 0 0 0;
line-height: 1.8em;
text-align: center;
clear: both;
}
section.content6 {
width: 103%;
padding: 0 0 0 0;
margin: 0 0 100px 0;
clear: both;
}
section.content7 {
width: 100%;
padding: 0 0 0 0;
margin: 0 0 50px 0;
text-align: left;
clear: both;
}
section.content8 {
width: 100%;
padding: 0 0 0 0;
margin: 0 0 100px 0;
clear: both;
}



@media only screen and (min-width: 767px){
section.content {
width: 1050px;
margin: 0 0 100px 0;
}
section.content2 {
width: 1090px;
margin: 0 0 100px 0;
}
section.content3 {
width: 1050px;
}
section.content4 {
width: 1090px;
margin: 0 0 50px 0;
}
section.content5 {
width: 1050px;
margin: -50px 0 50px 0;
}
section.content6 {
width: 1090px;
margin: 0 0 100px 0;
}
section.content7 {
width: 1050px;
margin: 0 0 50px 0;
}
section.content8 {
width: 1050px;
margin: 0 0 100px 0;
}

}
@media only screen and (max-width: 767px){
section.content,
section.content2,
section.content3,
section.content4,
section.content5,
section.content6,
section.content7 {
width: 100%;
}
section.content img{
max-width:100%;
height:auto;
}
}

* html section.content{height:1%;}
div.section.content p{margin-bottom:5px;}


/* h1
*************/
h1 {
display: none;
}

/* header
*************/
#header {
position: fixed;
width: 100%;
padding: 0 0 0 0;
letter-spacing: 0;
margin: 0 auto;
z-index: 999;
}
#header .inner {
width: 100%;
margin: 0 auto;
}
#header .htop {
background: #ed5239;
color: #fff;
line-height: 1em;
}
#header ul.htopm {
display: -webkit-flex;
display: flex;
align-items: center;
}
#header ul.htopm li.htopm1 {
margin-right: auto;
}
#header ul.htopm li.htopm2 {
margin: 0 10px 0 auto;
}
#header ul.htopm li.htopm3 {
margin: 0 10px 0 0;
}
#header ul.htopm li.htopm4 {
margin: 0 20px 0 0;
}
#header ul.htopm li.htopm5 {
padding: 0 10px 0 0;
margin: 0 10px 0 0;
font-size: 16px;
font-weight: 400;
border-right: 1px solid #fff;
}
#header ul.htopm li.htopm6 {
margin: 0 20px 0 0;
font-size: 16px;
font-weight: 400;
}
#header ul.htopm li.htopm7 {
font-size: 18px;
font-weight: 400;
background: #fff;
}
#header ul.htopm li.htopm7 a {
padding: 15px 20px;
color: #ed5239;
display: block;
}
#header .htoptxt {
font-size: 13px;
line-height: 1em;
text-align: left;
}

#header ul.hm {
display: -webkit-flex;
display: flex;
-webkit-justify-content: space-between;
justify-content: space-between;
align-items: center;
}
#header .logo {
margin: 10px 0 0 0;
}

/* header link
*************/
#header ul.htopm a {
color: #fff;
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
text-decoration: none;
}
#header ul.htopm a:hover {color:#f8bab0; text-decoration: none;}


@media only screen and (min-width: 1200px){
#header .inner {
width: 1200px;
}
}
@media only screen and (max-width: 1200px){
#header .inner {
width: 94%;
}
#header .logo {
width: 200px;
}
#header ul.htopm li.htopm1 {
width: 40vw;
}
#header .htoptxt {
font-size: 1vw;
}
#header ul.htopm li.htopm2 {
width: 88px;
}
#header ul.htopm li.htopm3 {
width: 71px;
}
#header ul.htopm li.htopm4 {
width: 91px;
}
#header ul.htopm li.htopm5 {
width: 100px;
font-size: 1.1vw;
}
#header ul.htopm li.htopm6 {
width: 60px;
font-size: 1.1vw;
}
#header ul.htopm li.htopm7 {
width: 110px;
font-size: 1.2vw;
}
#header ul.htopm li.htopm7 a {
padding: 10px;
}
}
@media only screen and (max-width: 767px){
#header ul.htopm li.htopm1 {
width: 90%;
padding: 5px 0;
}
#header .htoptxt {
font-size: 12px;
}
#header ul.htopm li.htopm2,
#header ul.htopm li.htopm3,
#header ul.htopm li.htopm4,
#header ul.htopm li.htopm5,
#header ul.htopm li.htopm6,
#header ul.htopm li.htopm7 {
display: none;
}
}


/* transition */
#header {
-webkit-transition: all .4s ease 0s,background .6s ease .2s;
transition: all .4s ease 0s,background .6s ease .2s;
-webkit-overflow-scrolling: touch;
overflow-scrolling: touch;
}
/* Fixed */
#header.fixed {
-webkit-transition: all .4s ease 0s,background .6s ease .2s;
transition: all .4s ease 0s,background .6s ease .2s;
-webkit-overflow-scrolling: touch;
overflow-scrolling: touch;
}
#header {
padding: 0 0 10px 0;
}
#header.fixed {
background:rgba(241,234,217,0.9);
}
@media only screen and (max-width: 1200px){
}
@media only screen and (min-width: 767px){
}
@media only screen and (max-width: 767px){
}

/* HdrNavi
*************/
nav#HdrNavi {
position: relative;
margin: 10px 0 0 0;
z-index: 10;
}
nav#HdrNavi.Fixed {
max-width:initial;
max-width:auto;
width:100%;
position:fixed;
top:0;
left:0;
z-index:100;
}
nav#HdrNavi ul {
display: -webkit-flex;
display: flex;
align-items: center;
}
nav#HdrNavi ul li {
width: 200px;
position:relative;
font-size: 16px;
line-height: 1em;
font-weight: 400;
text-align:center;
border-left: 1px solid #ed5239;
}
nav#HdrNavi ul li:last-child {
width: 200px;
position:relative;
font-size: 16px;
line-height: 1em;
font-weight: 400;
text-align:center;
border-left: 1px solid #ed5239;
border-right: 1px solid #ed5239;
}
nav#HdrNavi > ul > li a {
padding: 0 0;
display:block;
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
text-decoration: none;
}
nav#HdrNavi p.en {
padding: 10px 0 0 0;
color: #ed5239;
font-size: 12px;
letter-spacing: 1px;
}
nav#HdrNavi > ul > li a:hover{
text-decoration: none;
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
opacity: 0.6;
display:block;
}


/* SubMenu */
nav#HdrNavi ul.SubMenu {
position:absolute;
width: 200px;
text-align:left;
box-sizing:border-box;
top: 42px;
left: 50%;
transform:translateX(-50%);
z-index:20;
opacity: 0;
transition: 0s;
}
nav#HdrNavi > ul > li:hover ul.SubMenu {
display:block;
}
nav#HdrNavi ul.SubMenu li {
text-align: left; /* テキスト位置 */
border: none;
}
nav#HdrNavi li:hover ul{
visibility: visible;
opacity: 1;
}
nav#HdrNavi li:hover ul li a{
visibility: visible;
opacity: 1;
}
nav#HdrNavi ul.SubMenu li a {
padding: 10px 20px;
display:block;
text-decoration: none;
background:rgba(255,255,255,0.9);
color: #ed5239;
font-size: 16px;
font-weight: 400;
line-height: 1.3em;
border: none;
display:block;
visibility: hidden;
opacity: 0;
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
}
nav#HdrNavi ul.SubMenu li a:hover{
padding: 10px 20px;
color:#fff;
background: #ed5239;
}

/* HdrNavi link
*************/
nav#HdrNavi a {
color: #000;
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
text-decoration: none;
}
nav#HdrNavi a:hover {color:#666; text-decoration: none;}



@media only screen and (min-width: 1200px){
}
@media only screen and (max-width: 1200px){
nav#HdrNavi > ul > li a {
padding: 10px 0px;
}
nav#HdrNavi ul li {
width: 16vw;
font-size: 1.2vw;
}
nav#HdrNavi ul li:last-child {
width: 16vw;
font-size: 1.2vw;
}
nav#HdrNavi ul.SubMenu {
width: 120px;
top: 70px;
}
nav#HdrNavi ul.SubMenu li a {
font-size: 1.3vw;
}
nav#HdrNavi p.en {
font-size: 1vw;
}
}
@media only screen and (max-width: 900px){
}

/* footer
*************/
#Bgfooter {
background: #4e4e4e;
}
#footer {
position: relative;
width: 100%;
padding: 30px 0 30px 0;
z-index: 10;
}
#footer ul.fm {
display: -webkit-flex;
display: flex;
-webkit-justify-content: space-between;
justify-content: space-between;
text-align: left;
}
#footer .logo2 {
}
#footer ul.fm2 {
display: -webkit-flex;
display: flex;
-webkit-justify-content: space-between;
justify-content: space-between;
-webkit-align-items: flex-end;
align-items: flex-end;
}
#footer ul.fm3 {
display: -webkit-flex;
display: flex;
font-size: 14px;
line-height: 1em;
}
#footer ul.fm3 li {
padding: 0 10px 0 0;
margin: 0 10px 0 0;
border-right: 1px solid #fff;
}
#footer ul.fm3 li:last-child {
padding: 0 10px 0 0;
margin: 0 10px 0 0;
border-right: none;
}
#Bgfooter1 {
position: relative;
padding: 50px 0;
}
#Bgfooter1 ul.sns {
/*display: -webkit-flex;
display: flex;
-webkit-justify-content: space-between;
justify-content: space-between;
align-items: center;*/
text-align: center;
}

#Bgfooter1 ul.sns li{
display: inline-block;
vertical-align: top;
margin-right: 10px;
}

@media screen and (min-width:767px) {
#Bgfooter1 ul.sns li:last-child{
margin-right: 0px;
}
}

@media only screen and (min-width: 1200px){
#Bgfooter1 .inner {
width: 1200px;
margin: 0 auto;
}
}
@media only screen and (max-width: 1200px){
#Bgfooter1 .inner {
width: 94%;
}
}
@media only screen and (max-width: 767px){
#footer .logo2 {
margin: 0 auto 20px auto;
}
#footer ul.fm2 {
-webkit-justify-content: center;
justify-content: center;
-webkit-align-items: center;
align-items: center;
}
#footer ul.fm3 {
display: none;
}
#Bgfooter1 {
padding: 40px 0 30px 0;
}
#Bgfooter1 ul.sns {
/*-webkit-flex-direction: column;
flex-direction: column;*/
text-align: center;
width: 100%;
}
#Bgfooter1 ul.sns li {
margin: 0 auto 10px auto;
    display: block;
}
}

/* footnav link
*************/
#footer a {
color: #fff;
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
text-decoration: none;
}
#footer a:hover {color:#b8b8b8; text-decoration: none;}



@media only screen and (min-width: 767px){
#footer .inner {
width: 1200px!important;
}
}
@media only screen and (max-width: 767px){
#footer {
}
#footer .inner {
width: 94%!important;
}
#footer ul.fm {
-webkit-flex-direction: column;
flex-direction: column;
}
#footer .logo2 {
text-align: center;
}
#footer .add {
margin: 0 auto 20px auto;
font-size: 14px;
text-align: center;
}
}


/* footnav
*************/
nav#footnav {
position: relative;
padding: 0 0;
margin: 0 auto;
}
nav#footnav .inner {
margin: 0 auto;
}
nav#footnav ul.fnav {
display: -webkit-flex;
display: flex;
-webkit-justify-content: space-between;
justify-content: space-between;
font-size: 16px;
font-weight: 400;
line-height: 1em;
}
nav#footnav ul.fnav li {
margin: 0 0 10px 0;
}
nav#footnav ul.fnav li.fm1 {
margin: 0 0px 0 0;
}
nav#footnav ul.fnav li.fm2 {
padding: 10px 0 0 18px;
background: url(../img/ico_fm2.png) 5px 17px no-repeat;
font-size: 0.8rem;
}
nav#footnav ul.fnav li.fm3 {
padding: 10px 0 0 0;
}

@media only screen and (min-width: 767px){
nav#footnav {
width: 850px;
}
}
@media only screen and (max-width: 767px){
}


/* footnav link
*************/
nav#footnav a {
color: #fff;
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
text-decoration: none;
}
nav#footnav a:hover {color:#b8b8b8; text-decoration: none;}

/* copyright */
.copyright {
padding: 15px 0;
color: #fff;
font-size: 14px;
text-align: center;
background: #352d2c;
}


/* 固定ボタン
*************/
.headerGlobalBtn > li > a{
background-repeat: no-repeat;
background-position: 0 0;
display: block;
width: 198px;
height: 198px;
margin: 0;
padding: 0;
text-indent: 100%;
white-space: nowrap;
overflow: hidden;
filter: drop-shadow(0px 0px 5px rgba(0,0,0,0.3));
z-index: 99;
}
.headerGlobalBtn{
width: auto;
position: fixed;
top: 50%;
right: 5%;
z-index: 200;
}
.headerGlobalBtn > li{
display: block;
margin: 0 0 10px 0;
padding: 0;
}

/* headerGbtn1 */
.headerGlobalBtn > .headerGbtn1 > a {
width: 198px;
height: 198px;
background-size: auto;
  -webkit-transition: margin 1s ease;
     -moz-transition: margin 1s ease;
       -o-transition: margin 1s ease;
      -ms-transition: margin 1s ease;
          transition: margin 1s ease;
}
.headerGlobalBtn > .headerGbtn1 > a {
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
background-image: url(../img/bn_onlineshop.png);
}
.headerGlobalBtn > .headerGbtn1 > a:hover {
opacity: 0.6;
}

@media only screen and (max-width:767px) {
.headerGlobalBtn > li > a{
width: 98px;
}
.headerGlobalBtn{
top: 30%;
}

/* headerGbtn1 */
.headerGlobalBtn > .headerGbtn1 > a {
width: 98px;
height: 98px;
background-image: url(../img/bn_onlineshops.png);
}
}


/* main
------------------------------------------------------------*/
/* mainvisual
*************/
#mainvisual {
position: relative;
width: 100%;
margin: 0 auto;
}

/* top
*************/
#top {
position: relative;
width: 100%;
height: auto;
z-index: 0;
clear: both;
}
#top .inner {
width: 100%;
}

#top h2.topttl {
margin: 0 auto 50px auto;
position: relative;
display: inline-block;
font-size: 40px;
font-weight: 400;
}
#top h2.topttl:before {
content: '';
position: absolute;
bottom: -15px;
display: inline-block;
width: 100px;
height: 7px;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
background-color: #f2d137;
border-radius: 5px;
}
#top h3.topen {
color: #ed5239;
font-size: 12px;
}


@media only screen and (min-width: 1200px){
#top {
padding: 150px 0 0 0;
}
#top .inner {
width: 1200px;
}
}
@media only screen and (max-width: 1200px){
#top {
padding: 150px 0 0 0;
}
#top .inner {
width: 94%;
}
}
@media only screen and (max-width: 767px){
#top {
padding: 110px 0 0 0;
}
#top h2.topttl {
font-size: 30px;
}
}


/* top1 */
#top1 {
position: relative;
width: 100%;
margin: 0 auto;
}
#top1 h2.t1 {
margin: 0 auto 30px auto;
color: #ed5239;
font-size: 32px;
font-weight: 700;
line-height: 1em;
font-style: italic;
}
#top1 h3.t1 {
margin: 0 auto 30px auto;
font-size: 25px;
font-weight: 700;
}
#top1 h2.t1 span {
background: linear-gradient(transparent 70%, #f9ee3a 70%);
}
#top1 ul.wrap_t1 {
display: -webkit-flex;
display: flex;
-webkit-justify-content: space-between;
justify-content: space-between;
}
#top1 ul.wrap_t1 li {
position: relative;
}
#top1 ul.wrap_t1 li .wak {
position: absolute;
left: 0;
top: 0;
z-index: 1;
}
#top1 ul.wrap_t1 li .bg {
position: relative;
width: 100%;
min-height: 412px;
padding: 90px 0px 0 0px;
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
background: url(../topimg/img_bg1.png) center center no-repeat;
background-size: cover;
z-index: 2;
}
#top1 ul.wrap_t1 li .bg2 {
position: relative;
width: 100%;
min-height: 412px;
padding: 90px 0 0 0;
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
background: url(../topimg/img_bg2.png) center center no-repeat;
background-size: cover;
z-index: 2;
}
#top1 ul.wrap_t1 li .bg .bn_more1,
#top1 ul.wrap_t1 li .bg2 .bn_more1 {
position: absolute;
left: 50%;
bottom: 13%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
}

@media only screen and (max-width: 767px){
#top1 ul.wrap_t1 {
flex-wrap : wrap;
}
#top1 ul.wrap_t1 li {
width: 50%;
}
#top1 h2.t1 {
font-size: 4vw;
}
#top1 h3.t1 {
font-size: 3.3vw;
font-weight: 400;
}
#top1 ul.wrap_t1 li .bg {
min-height: 40vh;
background-image: none;
background-color: rgba(255,255,255,0.80);
    
    }
#top1 ul.wrap_t1 li .bg2 {
min-height: 40vh;
background-image: none;
background-color: rgba(255,255,255,0.80);
}
    
#top1 ul.wrap_t1 li .wak {
        display: none
    }    
    
}
@media only screen and (max-width: 480px){
#top1 ul.wrap_t1 li .bg {
min-height: 300px;
padding: 70px 0px 0 0px;
}
#top1 ul.wrap_t1 li .bg2 {
min-height: 300px;
padding: 70px 0px 0 0px;
}
#top1 ul.wrap_t1 li .bg .bn_more1,
#top1 ul.wrap_t1 li .bg2 .bn_more1 {
bottom: 20%;
}
}


/* top2 */
#top2 {
position: relative;
width: 100%;
padding: 70px 0;
margin: 0 auto;
border-bottom: 1px solid #ffb6aa;
}

@media only screen and (max-width: 767px){
#top2 {
padding: 40px 0;
}
}

/* news */
#news {
}
#news .news {
width: 70%;
height: 300px;
margin: 0 auto;
overflow: auto;
}
#news dl {
width: 100%;
padding: 20px 0px 20px 0;
display: -webkit-flex;
display: flex;
align-items: flex-start;
font-size: 18px;
font-weight: 400;
background: url(../img/line.png) left bottom repeat-x;
}
#news dl dt {
width: 20%;
text-align: left;
}
#news dl dd {
width: 80%;
text-align: left;
}

@media only screen and (min-width: 767px){
#news .news {
}
}
@media only screen and (max-width: 767px){
#news {
width: 100%;
}
#news .news {
width: 100%;
height: auto;
margin: 0 auto 30px auto;
}
#news dl {
width: 100%;
padding: 0px 0px 10px 0;
margin: 0px 0 10px 0;
-webkit-flex-direction: column;
flex-direction: column;
font-size: 16px;
}
#news dl dt {
width: 100%;
text-align: left;
}
#news dl dd {
width: 100%;
}
}


/* top3 */
#top3 {
position: relative;
width: 100%;
padding: 70px 0;
margin: 0 auto;
background: #fff;
border-bottom: 1px solid #ffb6aa;
}
#top3 h4.t3 {
font-size: 25px;
font-weight: 400;
}

@media only screen and (max-width: 767px){
#top3 {
padding: 40px 0;
}
#top3 h4.t3 {
font-size: 20px;
}
}

/* top4 */
#top4 {
position: relative;
width: 100%;
padding: 70px 0 0 0;
margin: 0 auto;
}
#top4 ul.wrap_t4 {
position: relative;
margin: 0 auto 20px auto;
display: -webkit-flex;
display: flex;
-webkit-justify-content: space-between;
justify-content: space-between;
align-items: flex-start;
}
#top4 ul.wrap_t4_2 {
position: relative;
margin: 0 auto 20px auto;
display: -webkit-flex;
display: flex;
-webkit-justify-content: space-between;
justify-content: space-between;
align-items: flex-start;
}
#top4 ul.wrap_t4 li.wt4l h4.t4,
#top4 ul.wrap_t4_2 li.wt4l h4.t4 {
width: 480px;
height: 77px;
padding: 17px 0 0 0;
position: absolute;
top: 10%;
right: -40%;

color: #ed5239;
font-size: 40px;
font-weight: 900;
line-height: 1em;
font-style: italic;
background: url(../topimg/img_wak5.png) left top no-repeat;
z-index: 9;
}
#top4 ul.wrap_t4 li.wt4r2 h4.t4,
#top4 ul.wrap_t4_2 li.wt4r2 h4.t4 {
width: 480px;
height: 77px;
padding: 17px 0 0 0;
position: absolute;
top: 10%;
left: -40%;

color: #ed5239;
font-size: 40px;
font-weight: 900;
line-height: 1em;
font-style: italic;
background: url(../topimg/img_wak6.png) left top no-repeat;
z-index: 9;
}
#top4 ul.wrap_t4 li {
position: relative;
}
#top4 ul.wrap_t4 li.wt4l,
#top4 ul.wrap_t4_2 li.wt4l {
position: relative;
width: 55%;
max-width: 640px;
}
#top4 ul.wrap_t4 li.wt4r,
#top4 ul.wrap_t4_2 li.wt4r {
width: 45%;
padding: 150px 0 0 0;
font-size: 20px;
line-height: 1.5em;
text-align: left;
}
#top4 ul.wrap_t4 li.wt4r2,
#top4 ul.wrap_t4_2 li.wt4r2 {
position: relative;
width: 55%;
max-width: 640px;
}
#top4 ul.wrap_t4 li.wt4l2,
#top4 ul.wrap_t4_2 li.wt4l2 {
width: 45%;
padding: 150px 0 0 0;
font-size: 20px;
line-height: 1.5em;
text-align: left;
}
#top4 ul.wrap_t4 li .wak,
#top4 ul.wrap_t4_2 li .wak {
position: absolute;
left: 0;
top: 0;
}

@media only screen and (max-width: 767px){
#top4 ul.wrap_t4 {
margin: 0 auto 40px auto;
-webkit-flex-direction: column;
flex-direction: column;
}
#top4 ul.wrap_t4_2 {
margin: 0 auto 40px auto;
-webkit-flex-direction: column-reverse;
flex-direction: column-reverse;
}
#top4 ul.wrap_t4 li.wt4l,
#top4 ul.wrap_t4_2 li.wt4l {
width: 100%;
max-width: 640px;
}
#top4 ul.wrap_t4 li.wt4r,
#top4 ul.wrap_t4_2 li.wt4r {
width: 100%;
padding: 20px 0 0 0;
font-size: 18px;
}
#top4 ul.wrap_t4 li.wt4r2,
#top4 ul.wrap_t4_2 li.wt4r2 {
width: 100%;
max-width: 640px;
}
#top4 ul.wrap_t4 li.wt4l2,
#top4 ul.wrap_t4_2 li.wt4l2 {
width: 100%;
padding: 20px 0 0 0;
font-size: 18px;
}
#top4 ul.wrap_t4 li.wt4l h4.t4,
#top4 ul.wrap_t4_2 li.wt4l h4.t4 {
width: 100%;
padding: 22px 0 0 0;
left: 50%;
top: 30%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
background: url(../topimg/img_wak5.png) center center no-repeat;
background-size: contain;
font-size: 28px;
}
#top4 ul.wrap_t4 li.wt4r2 h4.t4,
#top4 ul.wrap_t4_2 li.wt4r2 h4.t4 {
width: 100%;
padding: 22px 0 0 0;
left: 50%;
top: 30%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
background: url(../topimg/img_wak5.png) center center no-repeat;
background-size: contain;
font-size: 28px;
}
}


/* top5 */
#top5 {
position: relative;
padding: 70px 0 30px 0;
background: #fff;
}
#top5 .wrap_t5 {
width: 103%;
overflow: hidden;
}
#top5 .wrap_t5 .col3 {
width: 30.3%;
margin: 0 3% 3% 0;
float: left;
}
#top5 .wrap_t5 .col4 {
width: 22%;
margin: 0 3% 3% 0;
float: left;
}

@media only screen and (max-width: 767px){
#top5 {
padding: 50px 0 30px 0;
}
#top5 .wrap_t5 .col3 {
width: 100%;
}
#top5 .wrap_t5 .col4 {
width: 100%;
}
}


/* contact */
#contact {
position: relative;
width: 100%;
padding: 70px 0;
margin: 0 auto;
clear: both;
}
#contact h2.conttl {
margin: 0 auto 50px auto;
position: relative;
display: inline-block;
font-size: 40px;
font-weight: 400;
}
#contact h2.conttl:before {
content: '';
position: absolute;
bottom: -15px;
display: inline-block;
width: 100px;
height: 7px;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
background-color: #f2d137;
border-radius: 5px;
}
#contact h3.conen {
color: #ed5239;
font-size: 12px;
}
#contact h4.constt {
margin: 0 auto 20px auto;
font-size: 27px;
font-weight: 400;
}
#contact ul.wrap_con {
display: -webkit-flex;
display: flex;
-webkit-justify-content: space-between;
justify-content: space-between;
align-items: center;
text-align: center;
}
#contact ul.wrap_con li {
width: 50%;
border-right: 1px solid #989898;
}
#contact ul.wrap_con li:last-child {
width: 50%;
border-right: none;
}
#contact .conico {
margin: 0 auto 20px auto;
}
#contact .contel {
margin: 0 0 5px 0;
font-size: 50px;
font-weight: 900;
line-height: 1em;
}
#contact .contxt {
font-size: 18px;
}


@media only screen and (max-width: 767px){
#contact {
padding: 40px 0 0 0;
}
#contact h2.conttl {
font-size: 30px;
}
#contact h4.constt {
font-size: 18px;
}
#contact ul.wrap_con {
-webkit-flex-direction: column;
flex-direction: column;
}
#contact ul.wrap_con li {
width: 100%;
padding: 0 0 40px 0;
margin: 0 auto 20px auto;
border-right: none;
border-bottom: 1px solid #989898;
}
#contact ul.wrap_con li:last-child {
width: 100%;
padding: 0 0 40px 0;
border-bottom: none;
}
#contact .contel {
font-size: 7vw;
}
}


/* 吹き出し */
.balloon2 {
position: relative;
display: inline-block;
margin: 1.5em 0;
padding: 7px 10px;
min-width: 120px;
max-width: 100%;
font-size: 15px;
background: #FFF;
border: solid 3px #555;
box-sizing: border-box;
}

.balloon2:before {
content: "";
position: absolute;
bottom: -24px;
left: 50%;
margin-left: -15px;
border: 12px solid transparent;
border-top: 12px solid #FFF;
z-index: 2;
}

.balloon2:after {
content: "";
position: absolute;
bottom: -30px;
left: 50%;
margin-left: -17px;
border: 14px solid transparent;
border-top: 14px solid #555;
z-index: 1;
}


/* table
*************/
table.table {
border-collapse:collapse;
width:100%;
margin:0px auto 0px auto;
clear: both;
}
table.table th {
padding: 20px 20px 20px 0;
border-top:1px solid #000;
border-bottom:1px solid #000;
vertical-align: middle;
font-weight: 400;
}
table.table td {
padding: 20px 0;
border-top:1px solid #999;
border-bottom:1px solid #999;
vertical-align: middle;
}
table.table th + th {
padding: 20px 20px 20px 0;
border-bottom:1px solid #000;
vertical-align: middle;
font-weight: 400;
}
table.table td + td {
padding: 20px 0;
border-bottom:1px solid #999;
vertical-align: middle;
}
table.table .w {
width: 20%;
}


@media only screen and (max-width: 767px){
/* table
*************/
table.table {
width:100%;
}
table.table th,
table.table td {
width: 100%;
padding: 10px 0;
display: block;
border: none;
}
table.table th {
border-bottom:1px solid #000;
text-align: center;
}
table.table td {
overflow: hidden;
border-bottom:1px solid #c9c9c9;
}
table.table th + th {
padding: 10px 0;
}
table.table td + td {
padding: 10px 0;
}
table.table .w {
width: 100%;
}
table.table .w2 {
width: 100%;
}
table.table .ct {
text-align: center;
}
}

/* table2
*************/
table.table2 {
border-collapse:collapse;
width: 100%;
margin:0px auto 0px auto;
clear: both;
}
table.table2 th {
padding: 20px;
border-top:1px solid #000;
border-bottom:1px solid #000;
border-right: 1px solid #000;
text-align: center;
vertical-align: middle;
font-weight: 400;
}
table.table2 th:last-child {
border-right: 1px solid #000;
}
table.table2 th:first-child {
border-left: 1px solid #000;
}
table.table2 td {
padding: 20px;
border-top:1px solid #c9c9c9;
border-bottom:1px solid #c9c9c9;
border-right: 1px solid #c9c9c9;
vertical-align: middle;
}
table.table2 td:last-child {
border-right: 1px solid #c9c9c9;
}
table.table2 td:first-child {
border-left: 1px solid #c9c9c9;
}

@media only screen and (max-width: 767px){
table.table2 th {
padding: 10px;
}
table.table2 td {
padding: 10px;
}
}


/* table3
*************/
table.table3 {
border-collapse:collapse;
width:100%;
margin:0px auto 0px auto;
line-height: 1.3em;
border-right:1px solid #666;
border-left:1px solid #666;
clear: both;
}
table.table3 th {
padding: 10px;
border-top:1px solid #000;
border-bottom:1px solid #000;
border-right: 1px dashed #000;
text-align: center;
vertical-align: middle;
background: #ffe153;
font-weight: 400;
}
table.table3 th:last-child {
border-right: 1px solid #000;
}
table.table3 th:first-child {
border-left: 1px solid #000;
}
table.table3 td {
padding: 10px;
border-top:1px solid #666;
border-bottom:1px solid #666;
border-right: 1px dashed #666;
vertical-align: middle;
background: #fff;
}
table.table3 .w {
width: 30%;
}
table.table3 .w2 {
width: 45%;
}
table.table3 .t3_color1 {
background: #eee;
font-weight: 400;
}



/* table4
*************/
table.table4 {
border-collapse:collapse;
width:100%;
margin:0px auto 0px auto;
border-top:1px solid #999;
clear: both;
}
table.table4 th {
padding: 20px 20px;
vertical-align: middle;
background: #f6f6f6;
border-bottom:1px solid #999;
border-right:1px solid #999;
border-left:1px solid #999;
font-weight: 400;
}
table.table4 td {
padding: 20px 20px;
border-top:1px solid #999;
border-bottom:1px solid #999;
border-right:1px solid #999;
border-left:1px solid #999;
vertical-align: middle;
}
table.table4 th + th {
padding: 20px 20px;
vertical-align: middle;
border-bottom:1px solid #999;
border-right:1px solid #999;
border-left:1px solid #999;
font-weight: 400;
}
table.table4 td + td {
padding: 20px 20px;
border-bottom:1px solid #999;
border-right:1px solid #999;
border-left:1px solid #999;
vertical-align: middle;
}
table.table4 .w {
width: 20%;
}

@media only screen and (max-width: 767px){
/* table
*************/
table.table4 {
width:100%;
}
table.table4 th,
table.table4 td {
width: 100%;
padding: 10px 10px;
display: block;
border: none;
}
table.table4 th {
text-align: center;
border-left:1px solid #999;
border-right:1px solid #999;
border-bottom:1px solid #999;
background: #f1f1f1;
}
table.table4 td {
overflow: hidden;
border-bottom:1px solid #999;
border-left:1px solid #999;
border-right:1px solid #999;
}
table.table4 th + th {
padding: 10px 10px;
border-left:1px solid #999;
border-right:1px solid #999;
}
table.table4 td + td {
padding: 10px 10px;
border-left:1px solid #999;
border-right:1px solid #999;
}
table.table4 .w {
width: 100%;
}
}




/* form
*************/
.input {
width: 100%;
}
.hisu {
padding: 0 2% 0 2%;
margin: 0px 0px 0px 10px;
color: #ffffff;
font-size: 11px;
background: #e60012;
}
.submit {
margin: 30px auto 0 auto;
text-align: center;
}
.submit input{
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
}
.submit input:hover{
opacity: 0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha(opacity=70)";
text-decoration: none;
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
}

@media screen and (max-width :767px){
    .submit input {
        display: block !important;
        margin-bottom: 8px !important;
        margin-left: auto !important;
        margin-right: auto !important
    }
    .c-form-2 li::marker{
        padding-left: 15px !important;
    }
    .c-form-2 .pl15 {
        padding-left: 15px;
    }
    
}

.c-form-1 input[type="text"], .c-form-1 input[type="email"], .c-form-1 textarea {
border-radius: 3px;
border: solid 1px #dddddd;
background-color: #f7f7f7;
width: 100%;
padding: .8em;
}
.c-form-1 textarea {
min-height: 10em;
width: 100%;
}

.c-form-2 input[type="text"], .c-form-2 input[type="email"], .c-form-2 textarea {
border-radius: 3px;
border: solid 1px #dddddd;
background-color: #f7f7f7;
padding: .8em;
width: 200px;
}
.c-form-2 textarea {
min-height: 10em;
width: 200px;
}




/*Radio Check*/
label.radio, label.radio_text, label.checkbox, label.checkbox_text {
position      : relative;
cursor        : pointer;
display       : inline-block;
overflow      : hidden;
box-sizing    : border-box;
}
label.radio {
width         : 18px;
height        : 18px;
border        : 1px solid #666666;
border-radius : 100%;
}
label.radio_text {
min-height   : calc(18px + 5px);
margin-right : calc(18px + 5px);
padding-left : calc(18px + 5px);
line-height  : calc(18px + 5px);
}
label.checkbox {
width      : 20px;
height     : 20px;
border     : 1px solid #B3B3B3;
background : #fff;
}
label.checkbox_text {
padding-left : calc(20px + 5px);
line-height  : 20px;
}
/** before after **/
label.radio:before, label.radio_text:before, label.checkbox_text:before,
label.checkbox:after, label.radio_text:after, label.checkbox_text:after{
content  : '';
position : absolute;
box-sizing : border-box;
}
label.radio:before, label.radio_text:before{
border-radius    : 100%;
}
label.radio:before, label.checkbox:after{
top              : 0px;
bottom           : 0px;
left             : 0px;
right            : 0px;
margin           : auto;
}
label.checkbox:after, label.checkbox_text:after{
transform         : rotate(45deg);
-webkit-transform : rotate(45deg);
-moz-transform    : rotate(45deg);
border-right      : 3px solid #444;/* 色変更 */
border-bottom     : 3px solid #444;/* 色変更 */
top               : calc(50% - (((17px / 12 ) * 5) / 2));
display           : block;
margin-top        : calc(((17px / 12 ) * 5) * -1);
width             : calc(((17px / 12 ) * 5));
height            : 17px;
z-index           : 1;
}
label.radio_text:before, label.radio_text:after{
top              : 0px;
bottom           : 0px;
margin-top       : auto;
margin-bottom    : auto;
}
label.radio:before {
display          : block;
width            : 10px;
height           : 10px;
z-index          : 1;
background-color : #89d2de; 
}
label.radio_text:before {
width         : 18px;
height        : 18px;
border        : 1px solid #666666;
left          : 0px;
z-index       : 3;
}
label.checkbox_text:before {
width    : 20px;
height   : 20px;
left     : 0px;
top      : 0;
border   : 1px solid #B3B3B3;
z-index  : 3;
box-sizing: border-box;
}
label.radio_text:after {
width            : 10px;
height           : 10px;
border-radius    : 100%;
left             : calc(((18px/2) - (10px) / 2));
background-color : #444;/* 色変更 */
z-index          : 1;
}
label.checkbox_text:after {
left : calc((20px / 2) - (((17px / 12 ) * 5) / 2));
}
/** input **/
label.radio input[type="radio"], label.radio_text input[type="radio"], label.checkbox input[type="checkbox"], label.checkbox_text input[type="checkbox"]{
-moz-appearance: none;
-webkit-appearance: none;
position   : absolute;
z-index    : 2;
margin     : 0px;
width      : 20px;
height     : 20px;
box-sizing    : border-box;
outline       : none;
}
label.radio input[type="radio"], label.radio_text input[type="radio"]{
left       : calc(18px * -1);
width      : 18px;
height     : 18px;
top           : 0px;
bottom        : 0px;
margin-top    : auto;
margin-bottom : auto;
border-radius : 100%;
}
label.checkbox input[type="checkbox"], label.checkbox_text input[type="checkbox"]{
left       : calc(20px * -1);
padding    : 0;
}
label.radio input[type="radio"] {
display    : block;
box-shadow : 18px 0px #FFF;
}
label.radio_text input[type="radio"] {
box-shadow : 18px 0px #FFF;
}
label.checkbox input[type="checkbox"] {
box-shadow : 20px 0px #FFF;
}
label.checkbox_text input[type="checkbox"] {
display    : block;
box-shadow : 20px 0px #FFF;
}
/** checked forcus */
label.checkbox_text input[type="checkbox"]:checked,
label.checkbox input[type="checkbox"]:checked,
label.radio_text input[type="radio"]:checked,
label.radio input[type="radio"]:checked{
box-shadow : none;
}
label.checkbox_text input[type="checkbox"]:checked:focus,
label.checkbox input[type="checkbox"]:checked:focus{
opacity: 0.1;
}
label.radio_text input[type="radio"]:focus,
label.radio input[type="radio"]:focus{
opacity: 0.2;
}

label.checkbox_text input[type="checkbox"]:checked:focus {
box-shadow : 20px 0px #666;
}
label.checkbox_text input[type="checkbox"]:focus {
box-shadow : 20px 0px #EEE;
}
label.checkbox input[type="checkbox"]:checked:focus {
box-shadow : 20px 0px #666;
}
label.checkbox input[type="checkbox"]:focus {
box-shadow : 20px 0px #EEE;
}
label.radio_text input[type="radio"]:focus {
box-shadow : 18px 0px #FFF;
}
label.radio input[type="radio"]:focus {
box-shadow : 18px 0px #FFF;
}



/* form txt */
input[type=text] {
font-size: 100%;
font-weight: 300;
font-family: 'Noto Sans JP', "メイリオ", sans-serif;
}
textarea {
font-size: 100%;
font-weight: 300;
font-family: 'Noto Sans JP', "メイリオ", sans-serif;
}


/**/
.selectlist {
overflow: hidden;
text-align: left;
}
.selectlist select {
width: 100%;
padding-right: 1em;
cursor: pointer;
text-indent: 0.01px;
text-overflow: ellipsis;
border: none;
outline: none;
background: transparent;
background-image: none;
box-shadow: none;
-webkit-appearance: none;
appearance: none;
font-size: 16px;
}
.selectlist select::-ms-expand {
display: none;
}
.selectlist.cp01 {
position: relative;
border: 1px solid #bbbbbb;
border-radius: 3px;
background: #ffffff;
}
.selectlist.cp01::before {
position: absolute;
top: 1.2em;
right: 0.9em;
width: 0;
height: 0;
padding: 0;
content: '';
border-left: 6px solid transparent;
border-right: 6px solid transparent;
border-top: 6px solid #666666;
pointer-events: none;
}
.selectlist.cp01 select {
padding: 10px 20px 10px 10px;
color: #666666;
}


.selectlist2 {
width: 200px;
overflow: hidden;
text-align: left;
}
.selectlist2 select {
width: 100%;
padding-right: 1em;
cursor: pointer;
text-indent: 0.01px;
text-overflow: ellipsis;
border: none;
outline: none;
background: transparent;
background-image: none;
box-shadow: none;
-webkit-appearance: none;
appearance: none;
font-size: 16px;
}
.selectlist2 select::-ms-expand {
display: none;
}
.selectlist2.cp02 {
position: relative;
border: 1px solid #bbbbbb;
border-radius: 3px;
background: #ffffff;
}
.selectlist2.cp02::before {
position: absolute;
top: 1.2em;
right: 0.9em;
width: 0;
height: 0;
padding: 0;
content: '';
border-left: 6px solid transparent;
border-right: 6px solid transparent;
border-top: 6px solid #666666;
pointer-events: none;
}
.selectlist2.cp02 select {
padding: 10px 20px 10px 10px;
color: #666666;
}

@media screen and (max-width: 767px) {
.selectlist2 {
width: 100%;
}
}


/* googlemap
*************/
.ggmap {
height: 0;
overflow: hidden;
padding-bottom: 50%;
position: relative;
}
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.ggmap2 {
height: 0;
overflow: hidden;
padding-bottom: 30%;
position: relative;
}
.ggmap2 iframe,
.ggmap2 object,
.ggmap2 embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%; 
}

.ggmap3 iframe {
width: 100%;
    height: auto;
    padding-bottom: 0px;
}

@media screen and (min-width:768px){
  .ggmap3 iframe {
    height: 500px;
}  
    
}
/* googleカレンダー
*************/
.googlecal {
position: relative;
padding-bottom: 100%; /* 縦横比 */
height: 0;
}
.googlecal iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}
/* 画面幅が768px以上の場合の縦横比の指定 */
@media only screen and (min-width: 768px) {
.googlecal { padding-bottom: 75%; }
}

/* youtube
*************/
.youtube {
position: relative;
width: 100%;
padding-top: 56.25%;
}
.youtube iframe {
position: absolute;
top: 0;
right: 0;
width: 100% !important;
height: 100% !important;
}

/* facebook
*************/
.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget iframe[style]{
width: 100% !important;
}


/* page-visual-ttl
*************/
.page-visual-ttl {
position: relative;
margin: 0 auto 100px auto;
display: -webkit-flex;
display: flex;
-webkit-justify-content: space-between;
justify-content: space-between;
align-items: center;
background: #fff;
}
.page-ttl {
width: 700px;
z-index: 0;
}
.page-ttl::after {
content: '';
display: block;
position: absolute;
top: 50%;
left: 520px;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
width: 230px;
height: 230px;
background-color: #fff;
border-radius: 50%;
z-index: -1;
}
.page-ttl-img img {
height: 400px;
object-fit: cover;
}
.page-ttl2 {
z-index: 99;
}
.page-ttl .jp {
padding: 0 0 10px 0;
font-size: 35px;
font-weight: 700;
letter-spacing: 2px;
font-family: 'smartphone';
z-index: 9;
}
.page-ttl .en {
color: #ed5239;
font-size: 13px;
font-weight: 400;
letter-spacing: 2px;
z-index: 9;
}
.page-ttl-img {
width: calc(100% - 700px);
}


@media only screen and (max-width:767px){
}
@media only screen and (max-width:767px){
.page-visual-ttl {
-webkit-flex-direction: column-reverse;
flex-direction: column-reverse;
}
.page-ttl {
width: 100%;
padding: 20px 0;
z-index: 0;
}
.page-ttl::after {
content: '';
display: block;
position: absolute;
    left: 50%;
    top: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
width: 150px;
height: 150px;
background-color: #fff;
border-radius: 50%;
z-index: -1;
}
.page-ttl-img {
width: 100%;
}
.page-ttl-img img {
height: 200px;
object-fit: cover;
}
.page-ttl .jp {
font-size: 6vw;
}
}


/* パンくず
*************/
.pankuzu {
margin: 1% 0 5% 0;
font-size: 14px;
text-align: left;
}


/* 見出し
*************/
.h3 {
margin: 0 auto 50px auto;
position: relative;
display: inline-block;
font-size: 35px;
font-weight: 400;
text-align: center;
}
.h3:before {
content: '';
position: absolute;
bottom: -15px;
display: inline-block;
width: 100px;
height: 7px;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
background-color: #f2d137;
border-radius: 5px;
}
.h3 .en {
color: #ed5239;
font-size: 12px;
text-align: center;
}

.h4 {
position: relative;
padding: 15px 20px;
margin: 0 0 20px 10px;
-webkit-transform: skew(-15deg);
transform: skew(-15deg);
color: #fff;
font-size: 20px;
font-weight: 400;
line-height: 1.3;
text-align: left;
background-image: -webkit-gradient(linear, left top, right top, from(#ed5239), to(#fec131));
background-image: -webkit-linear-gradient(left, #ed5239 0%, #fec131 100%);
background-image: linear-gradient(to right, #ed5239 0%, #fec131 100%);
clear: both;
}
.h4 h4 {
-webkit-transform: skew(15deg);
transform: skew(15deg);
    text-shadow: 1px 1px 3px #ed5239;
}
.h4:after{
-webkit-transform: skew(15deg);
transform: skew(15deg);
position: absolute;
content: '';
left: 10px;
top: 23px;
width: 6px;
height: 6px;
border: 6px solid transparent;
border-left: 6px solid #fff100;
}

.h5 {
position: relative;
padding: 0px 0 10px 40px;
margin: 0 0 20px 0;
font-size: 18px;
line-height: 1.3em;
text-align: left;
font-weight: 400;
border-bottom: 2px solid #fff;
clear: both;
}
.h5:before {
content: '';
position: absolute;
display: inline-block;
width: 20px;
height: 20px;
left: 14px;
top: 3px;
background: url(../img/h5.png) 0px 0 no-repeat;
}

.h5_takeda01 {
position: relative;
padding: 0px 0 10px 40px;
margin: 80px 0 20px 0;
font-size: 18px;
line-height: 1.3em;
text-align: left;
font-weight: 400;
border-bottom: 2px solid #fff;
clear: both;
}
.h5_takeda01:before {
content: '';
position: absolute;
display: inline-block;
width: 20px;
height: 20px;
left: 14px;
top: 3px;
background: url(../img/h5.png) 0px 0 no-repeat;
}

.h5_2 {
position: relative;
padding: 0px 0 10px 15px;
margin: 0 0 20px 0;
font-size: 18px;
line-height: 1.3em;
text-align: left;
font-weight: 400;
border-bottom: 1px solid #ccc;
clear: both;
}
.h5_2:before {
content: '';
position: absolute;
display: inline-block;
width: 10px;
height: 10px;
left: 0;
top: 8px;
background: url(../img/ico_h5.png) 0 0 no-repeat;
}

.h5_3 {
margin: 0 0 10px 0;
}
.h5_3 h5 {
line-height: 1.4em;
text-align: left;
}
.h5_3 h5::before {
display: inline-block;
content: "";
margin-top: 6px;
margin-right: 4px;
width: 14px;
height: 14px;
vertical-align: top;
border-radius: 7px;
background-color: #000;
}
.h5_3 h5:last-child {
margin-bottom: 0;
}


@media only screen and (min-width: 767px){
.h3,
.h4,
.h5 {
width: 1050px;
}
}

@media only screen and (max-width: 767px){
.h3,
.h4,
.h5 {
width: 100%;
}
.h3 {
font-size: 26px;
}
}

/* カラム
*************/
#contents .col1 {
text-align: center;
}
#contents .col2 {
position: relative;
margin: 0 3% 5% 0;
float: left;
width: 47%;
text-align: left;
}
#contents .col3 {
position: relative;
margin: 0 3% 5% auto;
width: 30%;
float: left;
text-align: left;
}
#contents .col4 {
position: relative;
margin: 0 3% 5% 0;
width: 22%;
text-align: left;
float: left;
}
#contents .col5 {
margin: 0 3% 5% 0;
width: 17%;
text-align: left;
float: left;
}
#contents .col1 p,
#contents .col2 p,
#contents .col3 p,
#contents .col4 p,
#contents .col5 p {
padding: 3% 0 0 0;
line-height: 1.5em;
}
#contents p {
text-align: left;
}
#contents p.center {
text-align: center;
}

/* ボタン下揃え */
#contents .col3.sp {
padding: 0 0 70px 0;
}


/* 装飾デザイン
*************/
/* box_line */
.box_line1 {
position: relative;
padding: 3em;
background: #fff;
border: 1px solid #ed5239;
}

.box_line2 {
position: relative;
padding: 2em 2em;
background:rgba(255,255,255,0.7);
}




/* ボタン */
.buttonbox {
margin: 0px auto 0px auto;
text-align: center;
clear: both;
}
.buttonbox2 {
margin: 20px auto 10px auto;
text-align: center;
clear: both;
}
.buttonbox3 {
margin: 20px auto 0 auto;
text-align: center;
clear: both;
}
.buttonbox4 {
position: absolute;
margin: 0px auto 0px auto;
text-align: center;
position: absolute;
left: 50%;
bottom: 20px;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
}
.buttonbox5 {
margin: 0px auto 70px auto;
text-align: center;
clear: both;
}


@media only screen and (min-width: 767px) {
.buttonbox {
width: 300px;
}
.buttonbox2 {
width: 300px;
}
.buttonbox3 {
width: 50%;
}
.buttonbox4 {
width: 300px;
}
.buttonbox5 {
width: 300px;
}
}
@media only screen and (max-width: 767px) {
.buttonbox {
width: 80%;
}
.buttonbox2 {
width: 80%;
}
.buttonbox3 {
width: 100%;
}
.buttonbox4 {
width: 80%;
}
.buttonbox5 {
width: 80%;
}
}



/* button01 */
.button01 {
position: relative;
display: inline-block;
width: 100%;
margin: auto auto 0 auto;
}
.button01 a {
padding: 20px;
text-align:center;
color: #fff;
font-size: 18px;
font-weight: 400;
line-height: 1.3em;
text-decoration:none;
display: block;
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
background-color: #ed5239;
border: 1px solid #ed5239;
z-index: 100;
}
.button01::after {
position: absolute;
top: 50%;
right: 5%;
content: '';
margin-top: -5px;
transition: all .3s;

width: 8px;
height: 8px;
border-top: 2px solid #fff;
border-right: 2px solid #fff;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.button01 a:hover {
text-decoration: none;
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
color: #ed5239;
background-color: #fff;
border: 1px solid #ed5239;
}
.button01:hover::after {
border-top: 2px solid #ed5239;
border-right: 2px solid #ed5239;
}
@media only screen and (max-width: 768px) {
.button01 a {
padding: 15px;
font-size: 16px;
}
}

/* button01 */
.button01_2 {
position: relative;
display: inline-block;
width: 100%;
margin: auto auto 0 auto;
}
.button01_2 a {
padding: 20px;
text-align:center;
color: #fff;
font-size: 18px;
font-weight: 400;
line-height: 1.3em;
text-decoration:none;
display: block;
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
background-color: #ed5239;
border: 1px solid #ed5239;
z-index: 100;
}
.button01_2::after {
position: absolute;
top: 50%;
right: 5%;
content: '';
margin-top: -5px;
transition: all .3s;

width: 8px;
height: 8px;
border-top: 2px solid #fff;
border-right: 2px solid #fff;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.button01_2 a:hover {
text-decoration: none;
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
color: #ed5239;
background-color: #fff;
border: 1px solid #ed5239;
}
.button01_2:hover::after {
border-top: 2px solid #ed5239;
border-right: 2px solid #ed5239;
}
@media only screen and (max-width: 768px) {
.button01_2 a {
padding: 15px;
font-size: 16px;
}
}


/* button02 */
.button02 {
position: relative;
display: inline-block;
width: 100%;
margin: auto auto 0 auto;
}
.button02 a {
padding: 15px;
text-align:center;
color: #fff;
font-size: 16px;
font-weight: 400;
line-height: 1.3em;
text-decoration:none;
display: block;
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
background-color: #ed5239;
border: 1px solid #ed5239;
z-index: 100;
}
.button02::after {
position: absolute;
top: 50%;
right: 5%;
content: '';
margin-top: -5px;
transition: all .3s;

width: 8px;
height: 8px;
border-top: 2px solid #fff;
border-right: 2px solid #fff;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.button02 a:hover {
text-decoration: none;
-webkit-transition: all 0.4s ease;
-moz-transition: all 0.4s ease;
-o-transition: all 0.4s ease;
transition: all  0.4s ease;
color: #ed5239;
background-color: #fff;
border: 1px solid #ed5239;
}
.button02:hover::after {
border-top: 2px solid #ed5239;
border-right: 2px solid #ed5239;
}
@media only screen and (max-width: 768px) {
.button02 a {
padding: 15px;
font-size: 16px;
}
}


/* 色ボタンレイアウト */
.menucol1 {
width: 40%;
margin: 0 auto;
text-align: center;
}
.menucol2 {
margin: 0 3% 2% 0;
width: 47%;
text-align: left;
float: left;
}
.menucol3 {
margin: 0 3% 2% 0;
width: 30%;
text-align: left;
float: left;
}
.menucol4 {
margin: 0 3% 2% 0;
width: 22%;
text-align: left;
float: left;
}
@media only screen and (min-width: 767px){
.menucol2 {
width: 505px;
margin-right: 40px;
}
.menucol3 {
width: 336px;
margin-right: 21px;
}
.menucol4 {
width: 246px;
margin-right: 22px;
}
}
@media only screen and (max-width: 767px){
.menucol1 {
width: 100%;
}
.menucol2 {
margin: 0 3% 3% 0;
width: 100%;
}
.menucol3 {
margin: 0 3% 3% 0;
width: 100%;
}
.menucol4 {
margin: 0 3% 3% 0;
width: 100%;
}
}

/* フレキシブルボックス
*************/

/* 中央揃え　画像上テキスト下 */
.wrapbox {
width: 100%;
display: -webkit-flex;
display: flex;
-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
align-items: center; /* 縦方向中央揃え */
-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
justify-content: center; /* 横方向中央揃え */
-webkit-justify-content: space-between;
justify-content: space-between;
}
/* 中央揃え　画像上テキスト下　レスポンシブ逆 */
.wrapbox2 {
width: 100%;
display: -webkit-flex;
display: flex;
-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
align-items: center; /* 縦方向中央揃え */
-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
justify-content: center; /* 横方向中央揃え */
}
/* 上揃え　画像上テキスト下 */
.wrapbox3 {
width: 100%;
display: -webkit-flex;
display: flex;
-webkit-align-items: flex-start; /* 縦方向中央揃え（Safari用） */
align-items: flex-start; /* 縦方向中央揃え */
-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
justify-content: center; /* 横方向中央揃え */
-webkit-justify-content: space-between;
justify-content: space-between;
}
/* 上揃え　画像上テキスト下　レスポンシブ逆 */
.wrapbox4 {
width: 100%;
display: -webkit-flex;
display: flex;
-webkit-align-items: flex-start; /* 縦方向中央揃え（Safari用） */
align-items: flex-start; /* 縦方向中央揃え */
-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
justify-content: center; /* 横方向中央揃え */
-webkit-justify-content: space-between;
justify-content: space-between;
}
/* 中央揃え　画像上テキスト下　レスポンシブなし */
.wrapbox5 {
width: 100%;
display: -webkit-flex;
display: flex;
-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
align-items: center; /* 縦方向中央揃え */
-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
justify-content: center; /* 横方向中央揃え */
-webkit-justify-content: space-between;
justify-content: space-between;
}
/* 中央揃え　画像上テキスト下 */
.wrapbox6 {
width: 100%;
display: -webkit-flex;
display: flex;
align-items: center; /* 縦方向中央揃え */
-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
justify-content: center; /* 横方向中央揃え */
-webkit-justify-content: space-between;
justify-content: space-between;
}
/* 中央揃え　画像上テキスト下 レスポンシブなし */
.wrapbox7 {
width: 100%;
display: -webkit-flex;
display: flex;
-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
align-items: center; /* 縦方向中央揃え */
-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
justify-content: center; /* 横方向中央揃え */
-webkit-justify-content: space-between;
justify-content: space-between;
}
/* 上揃え レスポンシブなし */
.wrapbox8 {
width: 100%;
display: -webkit-flex;
display: flex;
-webkit-align-items: flex-start; /* 縦方向中央揃え（Safari用） */
align-items: flex-start; /* 縦方向中央揃え */
-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
justify-content: center; /* 横方向中央揃え */
-webkit-justify-content: space-between;
justify-content: space-between;
}
/* 上揃え レスポンシブなし */
.wrapbox9 {
width: 80%;
margin: 0 auto;
display: -webkit-flex;
display: flex;
-webkit-align-items: flex-start; /* 縦方向中央揃え（Safari用） */
align-items: flex-start; /* 縦方向中央揃え */
-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
justify-content: center; /* 横方向中央揃え */
-webkit-justify-content: space-between;
justify-content: space-between;
}


.wrap1 {
width: 10%;
}
.wrap1_2 {
width: 12%;
}
.wrap2 {
position: relative;
width: 20%;
}
.wrap2_5 {
width: 25%;
}
.wrap3 {
width: 30%;
}
.wrap3_2 {
width: 30%;
}
.wrap4 {
width: 40%;
}
.wrap5 {
width: 50%;
}
.wrap6 {
width: 60%;
}
.wrap7 {
width: 70%;
}
.wrap8 {
width: 80%;
}
.wrap9 {
width: 90%;
}

/* 線 */
.line1 {
padding: 10px 0 10px 0;
border-bottom: 3px solid #ccc;
}

/* 影 */
.shadow {
margin: 0 auto 0px auto;
}
.shadow img {
box-shadow: 0 0 10px rgba(0,0,0,0.2);
}

/* 矢印 */
.wrapar1 {
width: 64px;
height: 64px;
margin: 0 auto;
background: url(../img/ar03.png) center center no-repeat;
}

/* バツ */
.wrapbatu {
width: 48px;
height: 224px;
margin: 0 auto;
background: url(../img/img_batu.png) center center no-repeat;
}

/* 吹き出し背景 */
.wrap2 .fu {
width: 100%;
font-size: 20px;
font-weight: 400;
position: absolute;
top: 50%;left: 50%;-webkit-transform: translate(-50%, -50%);transform: translate(-50%, -50%);
z-index: 0;
}


/* 隙間 */
.wrap_spr1 {
margin-right: 1%;
}
.wrap_spr3 {
margin-right: 3%;
}
.wrap_spr3_2 {
margin-right: 3%;
}
.wrap_spl3 {
margin-left: 3%;
}
.wrap_spb3 {
margin-bottom: 3%;
}
.wrap_pad2 {
padding: 2%;
}
.wrap_pad3 {
padding: 3%;
}

.wrap_center {
text-align: center;
}

@media only screen and (max-width: 767px) {
.wrapbox {
-webkit-flex-direction: column;
flex-direction: column;
}
.wrapbox2 {
-webkit-flex-direction: column;
flex-direction: column;
-webkit-flex-direction: column-reverse;
flex-direction: column-reverse;
}
.wrapbox3 {
-webkit-flex-direction: column;
flex-direction: column;
}
.wrapbox4 {
-webkit-flex-direction: column;
flex-direction: column;
-webkit-flex-direction: column-reverse;
flex-direction: column-reverse;
}
.wrapbox6 {
-webkit-flex-direction: column;
flex-direction: column;
}
.wrapbox9 {
width: 100%;
-webkit-flex-direction: column;
flex-direction: column;
}


.wrap1,
.wrap2,
.wrap3,
.wrap4,
.wrap5,
.wrap6,
.wrap7,
.wrap8 {
width: 100%;
margin: 0 auto;
text-align: center;
}

/* 隙間 */
.wrap_spr1 {
margin: 0 0 3% 0;
}
.wrap_spr3 {
margin: 0 0 3% 0;
}
.wrap_spl3 {
margin: 0 0 3% 0;
}


/* 矢印 */
.wrapar1 {
width: 64px;
height: 64px;
margin: 20px auto;
background: url(../img/ar04.png) center center no-repeat;
}
/* バツ */
.wrapbatu {
width: 48px;
height: 100px;
margin: 0 auto;
background: url(../img/img_batu.png) center center no-repeat;
}
}


/* 画像+テキストレイアウト
*************/

/* 見出し */
.mi {
margin: 0 0 10px 0;
font-size: 18px;
line-height: 1.3em;
font-weight: 400;
}
.mi::after {
content: '';
display: block;
height: 1px;
width: 24px;
margin: 10px 0 0;
background: #666;
}

/* rental */
.wrap_b1_1 {
display: -webkit-flex;
display: flex;
-webkit-justify-content: space-between;
justify-content: space-between;
align-items: center;
}
.wrap_b1_1 li {
width: 30%;
}
.block1_1 {
padding: 20px;
background: #fff;
border: 1px solid #f39800;
border-radius: 20px;-webkit-border-radius: 20px;-moz-border-radius: 20px;
}
.box_b1_1 {
width: 100%;
display: -webkit-flex;
display: flex;
align-items: center;
}
.box_b1_1 li.b1_1l {
width: 30%;
}
.box_b1_1 li.b1_1r {
width: 70%;
text-align: center;
}
.box_b1_1 .b1_1ttl {
color: #ed5239;
font-size: 18px;
line-height: 1.3em;
font-weight: 400;
}

ol.box_b1_2 {
counter-reset:list;
list-style-type:none;
padding: 10px;
border: double 1px #f39800;
}
ol.box_b1_2 li{
position:relative;
line-height: 30px;
margin: 7px 0 7px 40px;
padding-left: 10px;
font-weight: 400;
text-align: left;
}
ol.box_b1_2 li:before{
counter-increment: list;
position: absolute;
top: 0;
left: -35px;
width: 10px;
height: 10px;
text-align: center;
color: #fff;
line-height:30px;
z-index:1;
}
ol.box_b1_2 li:after{
content:"";
position: absolute;
top: 10px;
left: -20px;
width: 15px;
height: 15px;
background: #ed5239;
color: #fff;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-o-transform: rotate(45deg);
-ms-transform: rotate(45deg);
transform: rotate(45deg);
}


/* culture */
.block2_1 {
padding: 20px 20px 100px 20px;
background: #fff;
border: 1px solid #f39800;
}
.block2_1 .b2_1ttl {
position: relative;
min-height: 70px;
margin: auto auto 10px auto;
color: #333;
font-size: 22px;
line-height: 1.3em;
font-weight: 400;
text-align: center;
}
.block2_1 .b2_1ttl::after {
content: '';
display: block;
height: 1px;
width: 40px;
margin: 10px auto 0 auto;
background: #000;
}

.block2_2 {
padding: 2em;
border: 5px solid #ffe815;
background:rgba(255,255,255,0.7);
text-align: center;
border-radius: 5px;-webkit-border-radius: 5px;-moz-border-radius: 5px;
}
.block2_2 .b2_2ttl {
margin: 0 auto 20px auto;
color: #ed5239;
font-size: 28px;
font-weight: bold;
font-family: 'smartphone';
}
.block2_2 .b2_2add {
margin: 0 auto 10px auto;
}
.block2_2 .b2_2tel1 {
font-size: 18px;
font-weight: 400;
}
.block2_2 .b2_2tel2 {
margin: 0 0 5px 0;
font-size: 40px;
font-weight: 900;
line-height: 1em;
}
.block2_2 .b2_2txt1 {
margin: 10px auto 10px auto;
color: #e60012;
}
.block2_2 .b2_2txt2 {
}

.title-box2{
margin: 2em 0 0 0;
padding: 1.5em;
position: relative;
border: 1px solid #f39800;
background-color: #f1ead9;
}

.title-box2-title{
position: absolute;
left: 50%;
top: -15px;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
font-weight: 400;
background-color: #f39800;
color: #fff;
padding: 0 20px;
}
.title-box2-txt {
padding: 10px;
margin: 20px 0 0 0;
background: #fff;
border: 1px solid #eb6100;
}


/* artist */
.block3_1 {
position: relative;
background: #ffffff;
overflow: visible;
padding: 3em 0.5em 2em 0.5em;
box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}
.cp_ribbon06 {
position: absolute;
top: -6.1px;
right: 10px;
}
.cp_ribbon06 span {
color: #fff;
font-size: 18px;
font-weight: 700;
position: relative;
display: block;
width: 90px;
padding: 12px 8px 10px;
text-align: center;
border-top-right-radius: 8px;
background: #f39800;
}
.cp_ribbon06 span:before, .cp_ribbon06 span:after {
position: absolute;
content: '';
}
.cp_ribbon06 span:before {
top: 0;
left: -6px;
width: 6px;
height: 6px;
background: #f39800;
}
.cp_ribbon06 span:after {
top: 0;
left: -8px;
width: 8px;
height: 6px;
border-radius: 8px 8px 0 0;
background: #666;
}
.block3_1 .b3_1txt {
font-size: 18px;
font-weight: 400;
text-align: center;
}


.block3_2 {
display: flex;
display: -webkit-flex;
flex-wrap: wrap;
}
.block3_2 li {
display: flex;
-webkit-justify-content: center;
justify-content: center;
align-items: center;
-webkit-flex-direction: column;
flex-direction: column;

width: 15%;
padding: 20px 10px;
margin: 0 auto 3% auto;
border: 4px solid #f9ee3a;
background: #fff;
font-size: 17px;
line-height: 1em;
}
.block3_2 li .b3_2stt {
font-weight: 400;
}
.block3_2 li .b3_2txt {
margin: 10px auto 0 auto;
font-size: 14px;
}

@media screen and (max-width: 767px) {
.block3_2 li {
width: 45%;
}
}
@media screen and (max-width: 260px) {
.block3_2 li {
width: 100%;
}
}

.block3_3 {  
display: block;
position: relative;
margin: 0 auto;
padding: 40px 20px 20px 20px;
background: #fff;
}
.ribbon20 {
display: inline-block;
position: absolute;
left: 0;
top: 10px;
box-sizing: border-box;
padding: 5px 15px;
margin: 0;
height: 40px;
line-height: 30px;
font-size: 18px;
font-weight: 400;
letter-spacing: 0.1em;
color: white;
background: #f39800;
box-shadow: 0 2px 2px rgba(0, 0, 0, 0.12);
}
.ribbon20:before {
position: absolute;
content: '';
top: 0;
left: -7px;
border: none;
height: 48px;
width: 7px;
background: #f39800;
border-radius: 5px 0 0 5px;
}
.ribbon20:after {
position: absolute;
content: '';
bottom: -7px;
left: -5px;
border: none;
height: 7px;
width: 5px;
background: #666;
border-radius: 5px 0 0 5px;
}


/* contact */
.block4 {
margin: 0 auto 10px auto;
display: -webkit-flex;
display: flex;
align-items: flex-start;
}
.block4 li.b4l {
width: 20%;
}
.block4 li.b4r {
width: 80%;
}
.block4_1 {
display: -webkit-flex;
display: flex;
align-items: center;
flex-wrap: wrap;
}
.block4_1 li {
width: 45%;
}
.block4_2 {
margin: 0 auto 10px auto;
display: -webkit-flex;
display: flex;
align-items: flex-start;
}
.block4_2 li.b4_2l {
width: 20%;
}
.block4_2 li.b4_2r {
width: 80%;
}
.block4_3 {
margin: 0 auto 10px auto;
display: -webkit-flex;
display: flex;
align-items: center;
flex-wrap: wrap;
}
.block4_3 li {
padding: 0 10px 0 0;
}
.block4_4 {
margin: 0 0 10px 0;
display: -webkit-flex;
display: flex;
align-items: center;
}
.block4_4 li.b4_4l {
width: 20%;
}
.block4_4 li.b4_4r {
width: 80%;
}

@media screen and (max-width: 767px) {
.block4 {
-webkit-flex-direction: column;
flex-direction: column;
}
.block4 li.b4l {
width: 100%;
margin: 0 0 10px 0;
}
.block4 li.b4r {
width: 100%;
margin: 0 0 20px 0;
}
.block4_1 li {
width: 100%;
}
.block4_2 {
-webkit-flex-direction: column;
flex-direction: column;
}
.block4_2 li.b4_2l {
width: 100%;
}
.block4_2 li.b4_2r {
width: 100%;
}
.block4_3 li {
width: 100%;
}
.block4_4 {
-webkit-flex-direction: column;
flex-direction: column;
}
.block4_4 li.b4_4l {
width: 100%;
}
.block4_4 li.b4_4r {
width: 100%;
}
}
@media screen and (max-width: 420px) {
.block4_3 li {
width: 50%;
}
}


/* rental */
.flow {
padding-top: 10px;
padding-left: 120px;
position: relative;
}
.flow::before {
content: "";
width: 15px;
height: 100%;
background: #fff;
margin-left: -8px;
display: block;
position: absolute;
top: 0;
left: 120px;
}
.flow > li {
position: relative;
}
.flow > li:not(:last-child) {
margin-bottom: 4vh;
}
.flow > li .icon {
font-size: 12px;
color: #fff;
background: rgb(243,159,74);
background: -moz-linear-gradient(left, rgba(243,159,74,1) 0%, rgba(253,101,79,1) 100%);
background: -webkit-linear-gradient(left, rgba(243,159,74,1) 0%,rgba(253,101,79,1) 100%);
background: linear-gradient(to right, rgba(243,159,74,1) 0%,rgba(253,101,79,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f39f4a', endColorstr='#fd654f',GradientType=1 );
padding: 8px 20px;
display: block;
position: absolute;
top: -7px;
left: -120px;
z-index: 100;
}
.flow > li .icon::after {
content: "";
border-style: solid;
border-width: 5px 0 5px 10px;
border-color: transparent transparent transparent #fd664f;
position: absolute;
top: 50%;
left: 100%;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}
.flow > li dl {
padding-left: 40px;
position: relative;
}
.flow > li dl::before,
.flow > li dl::after {
content: "";
display: block;
position: absolute;
top: 15px;
}
.flow > li dl::before {
width: 7px;
height: 7px;
margin-top: -3px;
background: #999;
border-radius: 50%;
left: -4px;
}
.flow > li dl::after {
width: 30px;
border-bottom: 1px dashed #999;
position: absolute;
left: 5px;
}
.flow > li dl dt {
font-size: 18px;
font-weight: 600;
color: #333;
margin-bottom: 0;
}


.block5_stt {
padding: 5px 10px;
margin: 0 auto 20px auto;
font-size: 16px;
font-weight: 400;
border: 1px solid #f39f4a;
clear: both;
}
.block5_2 {
padding: 5px 0 5px 20px;
font-weight: 400;
background: url(../img/img_pdf.png) 0 5px no-repeat;
}


/* news-アーカイブ */
#contents .wrap_archives {
position: relative;
padding: 3% 3% 0 3%;
margin: 0 0 8% 0;
border: 5px solid #fff;
}
#contents .wrap_archives .archives {
position: absolute;
top: -20px;
left: 50%;
transform: translateY(0%) translateX(-50%);
-webkit- transform: translateY(0) translateX(-50%);
padding: 10px 10px;
color: #fff;
font-size: 16px;
line-height: 1em;
text-align: center;
background: #000;
}
#contents .in_archives {
width: 103%;
overflow: hidden;
}
#contents .wrap_archives .menucol4 {
margin: 0 3% 2% 0;
width: 22%;
text-align: left;
float: left;
}
@media screen and (max-width: 767px) {
#contents .wrap_archives {
position: relative;
padding: 5% 3% 0 3%;
}
#contents .in_archives {
width: 100%;
}
#contents .wrap_archives .menucol4 {
width: 100%;
}
}



/* 画像
*************/
/* 画像丸 */
.imgradius img {
border-radius: 50%;
-webkit-border-radius: 50%;
-moz-border-radius: 50%;
}


/* 引用デザイン */
.blockquote {
width: 80%;
position: relative;
padding: 15px 20px 20px 70px;
margin: 0 auto;
background:url(../img/ico_quotation.png) 20px 20px no-repeat , #e2f2ff;
border: solid 5px #0f1565;
}
.blockquote:before{
position: absolute;
width: 30px;
height: 24px;
top: 0px;
left: 0px;}
.blockquote p {
padding: 0;
margin: 10px 0;
line-height: 1.7;
}
.blockquote cite {
display: block;
text-align: right;
color: #888888;
font-size: 0.9em;
}

@media only screen and (max-width: 767px){
.blockquote {
width: 100%;
}
}

/* 下からふわっと表示 */
.fadein {
opacity : 0;
transform: translateY(20px);
transition: all 1s;
}
/* 上からふわっと表示 */
.fadein1 {
opacity : 0;
transform: translateY(-20px);
transition: all 1s;
}
/* 左からふわっと表示 */
.fadein2 {
opacity : 0;
transform: translateX(-20px);
transition: all 1s;
}
/* 右からふわっと表示 */
.fadein3 {
opacity : 0;
transform: translateX(20px);
transition: all 1s;
}


/* 画像に影 */
.imgshadow img {
box-shadow: 6px 6px #eee9de;
}


/* 電話番号 */
#contents .tel {
color: #fff;
font-size: 45px;
line-height: 1.1em;
font-weight: 700;
}
#contents .tel a {
color: #000000;
text-decoration: none;
}

/* contact */
.block_contact {
display: -webkit-flex;
display: flex;
align-items: center;
}
.block_contact li.bcsp {
margin: 0 20px 0 10px;
}

@media only screen and (max-width: 767px){
#contents .tel {
font-size: 40px;
}
}

#contents .tel2 {
font-size: 45px;
line-height: 1.1em;
font-weight: 700;
}
#contents .tel2 a {
color: #000000;
text-decoration: none;
}


@media only screen and (max-width: 767px){
#contents .tel2 {
font-size: 30px;
}
}

/* スマホ用メニュー非表示
------------------------------------------------------------*/
@media only screen and (min-width: 767px){
.side-menu-btn {
display: none;!important
}
.side-menu {
display: none;!important
}
}

/* グローバルメニュー非表示
------------------------------------------------------------*/
@media only screen and (max-width: 767px){
nav#HdrNavi {
display: none;!important
}
nav#footnav  {
display: none;!important
}
}


/* PC用
------------------------------------------------------------*/
@media only screen and (min-width: 767px){
html {
min-width: 1200px; /* 右端が切れる時調整 */
}


*, *:before, *:after {
-webkit-box-sizing: border-box!important;
-moz-box-sizing: border-box!important;
-o-box-sizing: border-box!important;
-ms-box-sizing: border-box!important;
box-sizing: border-box!important;
}


/* PC用コンテンツ
------------------------------------------------------------*/

/*col
*************/
/* contents */
#contents .col2 {
width: 505px;
margin-right: 40px;
}
#contents .col3 {
width: 336px;
margin-right: 21px;
}
#contents .col4 {
width: 246px;
margin-right: 22px;
}
#contents .col5 {
width: 194px;
margin-right: 20px;
}

.alignleft,
.alignright {
max-width:100%;
height: auto;
text-align: center;
display: block;
}
}



/* 767以下
------------------------------------------------------------*/
@media only screen and (max-width: 767px){
html {
overflow-x: hidden;
}

*, *:before, *:after {
-webkit-box-sizing: border-box!important;
-moz-box-sizing: border-box!important;
-o-box-sizing: border-box!important;
-ms-box-sizing: border-box!important;
box-sizing: border-box!important;
}


/* 全体
*************/
.alignleft,
.alignright {
max-width: 600px;
margin:0 auto 20px auto;
clear: both;
float: none;
text-align: center;
display: block;
}

/*contents
*************/
#contents .col1,
#contents .col2,
#contents .col3,
#contents .col4 {
width: 98%;
margin-right: auto;
margin-left: auto;
text-align: center;
clear: both;
float: none;
}

#contents .col5 {
width: 98%;
text-align: center;
margin-right: auto;
margin-left: auto;
clear: both;
float: none;
}

.w6l,
.w4r,
.w4l,
.w6r,
.w3l,
.w3r,
.w7l,
.w7r {
width: 98%;
margin-right: auto;
margin-left: auto;
clear: both;
float: none;
}

/* scroll
*************/
.scroll{
width: 100%;
overflow: auto;
}
.scroll table.table2 {
width: 100%;
white-space: nowrap;
}
.scroll table.table2 tbody{
width: 100%;
}
.scroll::-webkit-scrollbar{
height: 5px;
}
.scroll::-webkit-scrollbar-track{
background: #F1F1F1;
}
.scroll::-webkit-scrollbar-thumb{
background: #BCBCBC;
}
.scroll table.table2 {
width:1050px;
}


.scroll table.table3 {
width: 100%;
white-space: nowrap;
}
.scroll table.table3 tbody{
width: 100%;
}
.scroll::-webkit-scrollbar{
height: 5px;
}
.scroll::-webkit-scrollbar-track{
background: #F1F1F1;
}
.scroll::-webkit-scrollbar-thumb{
background: #BCBCBC;
}
.scroll table.table3 {
width:1050px;
}

}


/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }

/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 767px) {
.pc { display: none !important; }
.sp { display: block !important; }
}

/*エリア編集画面調整*/
.wcarea_400211825401 .col3,
.wcedit_400211825401 .col3{
    position: static !important;
    width: 336px !important;
    display: inline-block !important;
    vertical-align: top !important;
}
.wcarea_400211825401 .col3 img,
.wcedit_400211825401 .col3 img{
   width: 100%;
    height: auto;
}
.wcarea_400211825401 .col2 {
    position: static !important;
    width: 505px !important;
    display: inline-block !important;
    vertical-align: top !important;
}

.wcarea_400211825401 .col4 {
    position: static !important;
    width: 246px !important;
    display: inline-block !important;
    vertical-align: top !important;
}

.wcarea_400211825401 .col5 {
    position: static !important;
       width: 194px !important;
    display: inline-block !important;
    vertical-align: top !important;
}

.wcarea_400211825401 .cp_ribbon06 {
	position: static !important;
	}
.wcarea_400211825401 .ribbon20 {
	position: static !important;
	}

.wcedit_400211825401 .answer {
    display: block !important
}
.wcedit_400211825401 .block4_1 li {
      width: 300px !important;
    display: inline-block;
    vertical-align: top;
}

.wcedit_400211825401 .block4_1 {
    position: static;
    width: 840px;
}
.wcarea_400211825401 .bn_contact,
.wcarea_400211825401 .buttonbox4 {
    position: static;
    display: block;
    transform: none;
}

.wcedit_400211825401 .buttonbox4 {
    position: static;
    display: block;
    transform: none;
	margin-top: 15px;
}


@media screen and (max-width:767px){

 .tal_sp a,
 .tal_sp{
 text-align: left !important;
 }

}

