/*
Theme Name: デントリペア
Description: デントリペア のテーマ
Version: 1.0
Author:	Rockstream
License: GPL
License URI: https://www.gnu.org/copyleft/gpl.html
*/


@charset "utf-8";

/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

@import url('https://fonts.googleapis.com/css?family=Roboto:700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@700&display=swap');

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    font-weight: normal;
    vertical-align:baseline;
    background:transparent;
}

body {
    line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,menu,nav,section {
	display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000;
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}

/* Reset+ */

ol li,
ul li {
	list-style: none;
	list-style-position: inside;
}

img {
	border:none;
	vertical-align: bottom;
}

* {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

.mt05 { 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;}
.mt35 {	margin-top: 35px !important;}
.mt40 {	margin-top: 40px !important;}
.mt45 {	margin-top: 45px !important;}
.mt50 {	margin-top: 50px !important;}
.mt55 {	margin-top: 55px !important;}
.mt60 {	margin-top: 60px !important;}
.mt65 {	margin-top: 65px !important;}
.mt70 {	margin-top: 70px !important;}
.mt75 {	margin-top: 75px !important;}
.mt80 {	margin-top: 80px !important;}
.mt85 {	margin-top: 85px !important;}
.mt90 {	margin-top: 90px !important;}
.mt95 {	margin-top: 95px !important;}
.mt100 { margin-top: 100px !important;}
.mb05 {	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;}
.mb35 {	margin-bottom: 35px !important;}
.mb40 {	margin-bottom: 40px !important;}
.mb45 {	margin-bottom: 45px !important;}
.mb50 {	margin-bottom: 50px !important;}
.mb55 {	margin-bottom: 55px !important;}
.mb60 {	margin-bottom: 60px !important;}
.mb65 {	margin-bottom: 65px !important;}
.mb70 {	margin-bottom: 70px !important;}
.mb75 {	margin-bottom: 75px !important;}
.mb80 {	margin-bottom: 80px !important;}
.mb85 {	margin-bottom: 85px !important;}
.mb90 {	margin-bottom: 90px !important;}
.mb95 {	margin-bottom: 95px !important;}
.mb100 { margin-bottom: 100px !important;}
.mr05 {	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;}
.mr35 {	margin-right: 35px !important;}
.mr40 {	margin-right: 40px !important;}
.mr45 {	margin-right: 45px !important;}
.mr50 {	margin-right: 50px !important;}
.mr55 {	margin-right: 55px !important;}
.mr60 {	margin-right: 60px !important;}
.mr65 {	margin-right: 65px !important;}
.mr70 {	margin-right: 70px !important;}
.mr75 {	margin-right: 75px !important;}
.mr80 {	margin-right: 80px !important;}
.mr85 {	margin-right: 85px !important;}
.mr90 {	margin-right: 90px !important;}
.mr95 {	margin-right: 95px !important;}
.mr100 {margin-right: 100px !important;}
.ml05 {	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;}
.ml35 {	margin-left: 35px !important;}
.ml40 {	margin-left: 40px !important;}
.ml45 {	margin-left: 45px !important;}
.ml50 {	margin-left: 50px !important;}
.ml55 {	margin-left: 55px !important;}
.ml60 {	margin-left: 60px !important;}
.ml65 {	margin-left: 65px !important;}
.ml70 {	margin-left: 70px !important;}
.ml75 {	margin-left: 75px !important;}
.ml80 {	margin-left: 80px !important;}
.ml85 {	margin-left: 85px !important;}
.ml90 {	margin-left: 90px !important;}
.ml95 {	margin-left: 95px !important;}
.ml100 { margin-left: 100px !important;}
.m_a {	
    margin-right: auto;
	margin-left: auto;
}
.pt00 {	padding-top: 0 !important;}
.pt05 {	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;}
.pt35 {	padding-top: 35px !important;}
.pt40 {	padding-top: 40px !important;}
.pt45 {	padding-top: 45px !important;}
.pt50 {	padding-top: 50px !important;}
.pt55 {	padding-top: 55px !important;}
.pt60 {	padding-top: 60px !important;}
.pt65 {	padding-top: 65px !important;}
.pt70 {	padding-top: 70px !important;}
.pt75 {	padding-top: 75px !important;}
.pt80 {	padding-top: 80px !important;}
.pt85 {	padding-top: 85px !important;}
.pt90 {	padding-top: 90px !important;}
.pt95 {	padding-top: 95px !important;}
.pt100 { padding-top: 100px !important;}
.pt150 { padding-top: 150px !important;}
.pb00 {	padding-bottom: 0 !important;}
.pb05 {	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;}
.pb35 {	padding-bottom: 35px !important;}
.pb40 {	padding-bottom: 40px !important;}
.pb45 {	padding-bottom: 45px !important;}
.pb50 {	padding-bottom: 50px !important;}
.pb55 {	padding-bottom: 55px !important;}
.pb60 {	padding-bottom: 60px !important;}
.pb65 {	padding-bottom: 65px !important;}
.pb70 {	padding-bottom: 70px !important;}
.pb75 {	padding-bottom: 75px !important;}
.pb80 {	padding-bottom: 80px !important;}
.pb85 {	padding-bottom: 85px !important;}
.pb90 {	padding-bottom: 90px !important;}
.pb95 {	padding-bottom: 95px !important;}
.pb100 { padding-bottom: 100px !important;}
.pb150 { padding-bottom: 150px !important;}
.pr05 {	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;}
.pr35 {	padding-right: 35px !important;}
.pr40 {	padding-right: 40px !important;}
.pr45 {	padding-right: 45px !important;}
.pr50 {	padding-right: 50px !important;}
.pr55 {	padding-right: 55px !important;}
.pr60 {	padding-right: 60px !important;}
.pr65 {	padding-right: 65px !important;}
.pr70 {	padding-right: 70px !important;}
.pr75 {	padding-right: 75px !important;}
.pr80 {	padding-right: 80px !important;}
.pr85 {	padding-right: 85px !important;}
.pr90 {	padding-right: 90px !important;}
.pr95 {	padding-right: 95px !important;}
.pr100 { padding-right: 100px !important;}
.pl05 {	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;}
.pl35 {	padding-left: 35px !important;}
.pl40 {	padding-left: 40px !important;}
.pl45 {	padding-left: 45px !important;}
.pl50 {	padding-left: 50px !important;}
.pl55 {	padding-left: 55px !important;}
.pl60 {	padding-left: 60px !important;}
.pl65 {	padding-left: 65px !important;}
.pl70 {	padding-left: 70px !important;}
.pl75 {	padding-left: 75px !important;}
.pl80 {	padding-left: 80px !important;}
.pl85 {	padding-left: 85px !important;}
.pl90 {	padding-left: 90px !important;}
.pl95 {	padding-left: 95px !important;}
.pl100 { padding-left: 100px !important;}

.floatL{float: left;}
.floatR{float: right;}
.fw_b{font-weight: bold;}
.textC{text-align: center;}
.textR {text-align: right;}
.textL {text-align: left;}

.w95per { width: 95%;}
.w90per { width: 90%;}
.w85per { width: 85%;}
.w80per { width: 80%;}
.w75per { width: 75%;}
.w70per { width: 70%;}
.w65per { width: 65%;}
.w60per { width: 60%;}
.w55per { width: 55%;}
.w50per { width: 50%;}

/* Common */

body {
	font-family: Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" ,  "メイリオ" , Meiryo , "Meiryo UI" , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	font-size: 16px;
    line-height: 1.8;
    color: #333;
    background: #fff;
}

.serif {
    font-family:"Roboto Slab" , Garamond , "Times New Roman" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
    font-size: 16px;
}
.lato{
    font-family: 'Lato', sans-serif;
}
.latoB{
    font-family: 'Lato', sans-serif;
    font-weight: bold;
}

a {
  color: #000;
	text-decoration:none;
}

a:hover {
  color: #000;
  opacity: 0.6;
  -webkit-transition: all .5s;
  transition: all .5s;
}

a:hover img {
	opacity: 0.8;
	-webkit-transition: all .5s;
	transition: all .5s;
}

.white{ color:#fff; }
.black{ color:#000; }
.red{ color:#ff0000; }
.green{ color:#007564; }
.green2{ color: #32b16c;}
.brown{ color:#810021; }
.blue{ color:#114cba; }
.dblue{ color:#0a2d96; }
.water{ color: #0498e3;}
.org{color:#ff9000;}

.bgRed{ background:#ff0000; }
.bgGray{ background: #eee; }
.bgBlue{ background: #114cba; }
.bgBlack{ background: #000; }
.bgWhite{ background: #fff; }
.bgWtr{ background:#0498e3; }
.bgWtr2{ background:#cdeefc; }
.bgYl{ background: #ffd200; }
.bgOrg{ background: #ff9000; }
.bgGr2{ background-color: #32b16c;}
.bgF1{background:url(images/background/bgF1.png);}
.bgBlue02{background: url(images/background/bgBlue02.png);}

.yLine {
    background-image: linear-gradient(transparent 40%, #f2ea53 60%);
    display: inline;
}

.fs14 {font-size:14px;}
.fs16 {font-size:100%;}
.fs18 {font-size:18px;}
.fs20 {font-size:20px;}
.fs24 {font-size:24px;}
.fs26 {font-size:26px;}
.fs28 {font-size:28px;}
.fs30 {font-size:30px;}
.fs36 {font-size:36px;}
.fs40 {font-size:40px;}
.fs48 {font-size:48px;}
.bold{font-weight: bold;}

.smp{display:none;}

/*クリアフィックス*/
.cf:after{
	content:".";
	display:block;
	clear:both;
	height:0;
	visibility:hidden;
}
.common-wrapperL{
    position: relative;
    max-width: 1120px;
    width:96%;
    margin:auto;
}
.common-wrapper{
    position: relative;
    max-width: 1060px;
    width:96%;
    margin:auto;
}
.inner {
    margin:auto;
    position: relative;
}
.dispTb{
    display: table;
}
.vMiddle{
    display: table-cell;
    vertical-align: middle;
}
iframe{ width:100%; }
.dispnone{
    display: none;
}
.img img{
    width:100%;
    height:auto;
}
.brBlock{
    display: none;
}
.tit{
    text-align: center;
}
.flex50 li{
    width:49%;
    
}
.brNone{display: none;}
small, .small {
    font-size: 87.5%;
}

/*---------------------
ヘッダー 
---------------------*/
#header{
    position:relative;
    height: 110px;
}
#header .logoArea{
    position:relative;
    padding-top:30px;
    max-width: 275px;
    font-size: 24px;
}
#header .logoArea a{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
#header .logoArea a:hover{
    text-decoration: none;
}
#header .logoArea .logo{
    max-width:47px;
    margin-right:10px;
    padding-top:5px;
}
#header .logoArea span{
    display: block;
    font-weight: bold;
    line-height:1.2;
}
#header .cardArea{
    position: absolute;
    top:23px;
    left:32%;
    max-width: 248px;
    width:24%;
}
#header .contactArea{
    position: absolute;
    top:20px;
    right:0;
    max-width: 450px;
    width:43%;
}
#header .contactArea .sodan{
    text-align: center;
    font-size: 15px;
    font-weight: bold;
}
#header .telArea{
    max-width: 250px;
    line-height: 1.2;
}
#header .telArea .tel span{
    display: block;
}
#header .telArea .num{
    font-size:min(34px,3vw);
    font-family: 'Barlow Condensed', sans-serif;
}
_::-webkit-full-page-media, _:future, :root #header .telArea .tel{
    font-size:30px;
}
#header .telArea .icon{
    max-width: 32px;
    width:12.8%;
    margin-right:3px;
}
#header .contactArea .mail{
    max-width: 200px;
    width:45%;
}

.drawer-hamburger{
    display: none;
}

/* セクション共通 */
section {
    position: relative;
    padding:70px 0;
}
@media (max-width:812px) {
    section {
        padding:40px 0;
    }
}
@media (max-width:414px) {
    section {
        padding:30px 0;
    }
}
.h2 {
    padding:13px 0;
    text-align: center;
}
.h2 span{
}
h2 span img{width:100%;}

.h3 {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 15px;
}

h3.fs20,h4.fs20 {font-size:20px; font-weight: bold;}

.flex{
    display: -webkit-flex;
    display: flex;
    justify-content: inherit;
    align-items: inherit;
}
.flex1{
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.flex2{
    -webkit-justify-content: space-around;
    justify-content: space-around;
}
.flex3{
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}
.flex_i1{
    flex:1;
}
.flex_wrap { flex-wrap: wrap;}
.col2 li{
    width:49%;
}
.col3 li{
    width:32%;
}
.btn{
    position:relative;
}
.btn a{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
.col1of2{
    width:49%;
}
@media only screen and (max-width: 414px){
    .col1of2{
        width:100%;
    }
}
.half{
    width:50%;
}

/* 下層ページ共通 */
.breadcrumb{
    padding: 10px 0;
    font-size: 14px;
}
.breadcrumb,
.breadcrumb a{
    color:#000;
}
.breadcrumb a:hover{
    text-decoration: underline;
}
.breadcrumb li{
    display: inline;
}

#mainImage .bgImg{
    padding:180px 0;
    text-align: center;
}
#mainImage .titMain h1{
    font-size:min(46px,7vw);
    font-weight:bold;
    color:#fff;
}
@media only screen and (max-width: 812px){
    #mainImage .bgImg{
        padding:100px 0;
    }
}
@media only screen and (max-width: 414px){
    #mainImage .bgImg{
        padding:60px 0;
    }
}

/*--------------------
お問い合わせ
---------------------*/
.contact .bgImg{
    background:url(images/contact/bg_main.jpg) no-repeat center;
    background-size:cover;
}
#inquiry h2{
    margin:auto;
}
#inquiryForm{
    width:100%;
    margin:0 auto 40px;
    border-top:1px solid #d2d2d2;
}
#inquiryForm th{
    width:30%;
    padding:15px;
    font-size:min(16px,2vw);
    font-weight: bold;
    text-align: left;
    border-bottom:1px solid #d2d2d2;
}
#inquiryForm th span.red{
    float:right;
    font-size: 90%;
    font-weight: normal;
}
#inquiryForm tr:last-child th{
    vertical-align: top;
}
#inquiryForm td{
    width:70%;
    padding:15px 30px;
    font-size:min(16px,2vw);
    border-bottom:1px solid #d2d2d2;
}
#inquiryForm td .mw-wp-form_image img{
    width:90%;
    max-width: 300px;
}
#inquiryForm .w80{
    width:80%;
    background: #f4f4f4;
    border: 1px solid #ccc;
    box-shadow: 0 1px 1px rgb(0 0 0 / 10%) inset;
    padding: 3px;
}
#inquiryForm .w80::-webkit-input-placeholder {
    color: #b2b2b2;
    font-weight: normal;
}
#inquiryForm .w80:-ms-input-placeholder {
    color: #b2b2b2;
    font-weight: normal;
}
#inquiryForm .w80::-moz-placeholder {
    color: #b2b2b2;
    font-weight: normal;
}
#inquiryForm td.select span{
    display: inline-block;
}
.mw_wp_form #inquiryForm .horizontal-item + .horizontal-item{
    margin-right: 10px;
    margin-left:0;
}
.mwform-tel-field input[type="text"], .mwform-zip-field input[type="text"]{
    background: #f4f4f4;
    border: 1px solid #ccc;
    box-shadow: 0 1px 1px rgb(0 0 0 / 10%) inset;
    padding: 3px
}
#inquiryForm input[type="file"]{
    font-size:95%;
}
span.mwform-tel-field input{
    padding: 5px;
}
span.mwform-tel-field input[name="tel[data][0]"],
span.mwform-tel-field input[name="fax[data][0]"]{
    width:15%;
}

span.mwform-tel-field input[name="tel[data][1]"],
span.mwform-tel-field input[name="fax[data][1]"]{
    width:20%;
}

span.mwform-tel-field input[name="tel[data][2]"],
span.mwform-tel-field input[name="fax[data][2]"]{
    width:20%;
}
.checkPolicy{
    margin-bottom:30px;
    text-align: center;
}
.checkPolicy a{
    color:#da1313;
    text-decoration:underline;
}
.checkPolicy input{
    margin-right: 10px;
}

input.btnConfirm{
    max-width:250px;
    width:46%;
    height: 60px;
    margin:auto;
    padding:10px 0;
    color:#00436e;
    background:url(images/background/bgInput.png) no-repeat center;
    background-size: cover;
    text-align:center;
    font-size:min(18px,2.6vw);
    font-weight:bold;
    cursor:pointer;
    box-shadow: none;
    border:none;
    border-radius:8px;
}
input.btnReturn{
    width:40%;
    margin:0 10px;
}
#inquiry .btnArea{
    max-width: 600px;
    margin:auto;
}
#inquiry .btnArea input{
    display:block;
}
#inquiry .checkPolicy{
    margin-bottom: 20px;
}
#inquiry .privacy{
    margin-bottom:30px;
}
#inquiry .privacy .title{
    margin-bottom:15px;
    font-weight: bold;
}
#inquiry .checkPolicy span.agree{
    color:#ff0000;
    text-decoration: underline;
}

input.btn_contact_return{
    margin:0 10px;
}
.checkPolicy label .mwform-checkbox-field-text{
    display:none;
}
.mwform-checkbox-field input, .mwform-radio-field input{
    display: inline-block;
}
.checkPolicy .mwform-checkbox-field{
    display: inline-block;
}
.mw_wp_form .error{
    display: inline-block;
}
.checkPolicy .textLink{
    display: inline-block;
}
.mw_wp_form_confirm .checkPolicy{
    display:none;
}
@media only screen and (max-width: 812px){
    input.btnConfirm {
        height:auto;
        border-radius:20px;
    }
}
@media only screen and (max-width: 414px){
    #inquiryForm th,#inquiryForm td{
        display:block;
        width:100%;
    }
    #inquiryForm th{
        padding-bottom:0;
        border-bottom:0;
    }
    #inquiryForm th span.red{
        float:none;
        margin-left:15px;
    }
    #inquiryForm .w80{
        width:100%;
    }
}

/* プライバシーポリシー */
#privacy .common-wrapperS{
    max-width:950px;
}
#privacy h2{
    margin-bottom:60px;
    text-align: center;
    font-size:min(32px,6vw);
}
#privacy h3{
    margin-bottom:15px;
    padding-left:10px;
    font-size: 22px;
    border-left:4px solid #000;
    line-height: 1;
}
#privacy .txt{
    margin-bottom:50px;
}
@media only screen and (max-width: 812px){
    #privacy  h2{
        margin-bottom:30px;
    }
    #privacy  h3{
        font-size: 18px;
    }
}
@media only screen and (max-width: 414px){
    #privacy  h3{
        font-size:16px;
    }
}

/*---------------------
施工事例
---------------------*/
.case .bgImg{
    background:url(images/case/bg_main.jpg) no-repeat center;
    background-size:cover;
}

.case .upper .img{
    width:100%;
}
.case .menuarea h2{
    max-width:379px;
    width:60%;
    margin:0 auto 30px;
}
.case .menuarea .box{
    padding:50px 0;
    background-color:#f5f5f5;
}
.case .menuarea .box ul{
    max-width: 1000px;
    width:96%;
    margin:auto;
}
.case .menuarea .box ul li{
    width:19%;
    margin:0 0.5%;
    padding:10px;
    text-align: center;
    font-size:min(16px,1.6vw);
    color:#00436e;
    background-color:#eefafe;
    background-image:url(images/btn/arrow01.png);
    background-position:95% 50%;
    background-repeat:no-repeat;
    border:1px solid #00436e;
    border-radius:20px;
    line-height:1;
}
.case .menuarea .box ul li:nth-child(4){
    text-align: left;
}
.case .menuarea .box ul li:hover{
    color:#fff;
    background-color:#00436e;
    transition: .4s;
}
#case_list{
    padding-top:20px;
}
#case_list article .cate{
    position:relative;
    padding:12.5px 0;
    background:url(images/case/bg_cate.png) no-repeat center;
}
#case_list article .cate span{
    font-size:min(36px,5vw);
    font-weight:bold;
    color:#00436e;
}
#case_list .bg{
    padding:40px 0;
    background-color:#f5f5f5;
}
#case_list .case01{
    margin-bottom:30px;
}
#case_list .case01 .name{
    display: inline-block;
    margin-bottom:20px;
    padding:10px;
    color:#fff;
    background-color:#00436e;
    border-radius:20px;
    line-height:1;
}
#case_list .case01 .freeeditor{
    width:100%;
    padding:30px;
    background-color:#fff;
}
#case_list .case02{
    width:100%;
}
#case_list .case02 table{
    width:100%;
}
#case_list .case02 table th,
#case_list .case02 table td{
    width:calc(100%/3);
    padding:10px;
    font-size:min(24px,3vw);
    font-weight:bold;
    text-align: center;
    border-right:5px solid #f5f5f5;
    border-bottom:5px solid #f5f5f5;
    vertical-align: middle;
}
#case_list .case02 table td span{
    font-weight:bold;
}
#case_list .case02 table td span.num{
    font-size:min(40px,6vw);
    font-family: 'Barlow Condensed', sans-serif;
}
#case_list .case02 table:nth-child(1) th{
    color:#00436e;
    background-color:#fcea1f;
}
#case_list .case02 table:nth-child(1) td{
    color:#db3434;
    background-color:#fff;
}
#case_list .case02 table th{
    color:#fff;
    background-color:#00436e;
}
#case_list .case02 table td{
    color:#00436e;
    background-color:#eefafe;
}
.btnReturn{
    max-width: 250px;
    width:60%;
    margin:auto;
}
@media only screen and (max-width: 1060px){
    #case_list article .cate {
        position: relative;
        padding: 10px 0 10px 4%;
        background: url(images/case/bg_cateS.png) no-repeat left;
        background-size:5% 100%;
    }
}
@media only screen and (max-width: 812px){
    .case .menuarea .box ul li{
        width:48%;
        margin-bottom:10px;
    }
    .case .menuarea .box ul li:nth-child(4){
        text-align: center;
    }
    #case_list .case01 .freeeditor{
        padding:15px;
    }
    #case_list .case02 table th,
    #case_list .case02 table td{
        padding:0 5px;
    }
}
@media only screen and (max-width: 414px){
    .case .menuarea .box{
        padding:30px 0;
    }
    .case .menuarea .box ul li{
        font-size:12px;
    }
    #case_list .bg{
        padding:20px 0;
    }
    #case_list .case01 p.img{
        margin-bottom:25px;
    }
}

/*---------------------
Pager
---------------------*/
.pager::before, .pager::after {
    content: " ";
    display: table;
}
.pager::after {
    clear: both;
}
.pager::before, .pager::after {
    content: " ";
    display: table;
}
.pager {
    position: relative;
    color:#fff;
}
.pager.bottomPager{
    padding-top:40px;
}
.pager span.pageNumber{
    display: inline-block;
    vertical-align: top;
    margin-right:5px;
    padding-top:8px;
}
.pager div.pager_num {
    display:inline-block;
    text-align:center;
    margin:0 auto;
}
.pager .pager_num span,
.pager .pager_num a {
    display: block;
    float:left;
    width:30px;
    height: 30px;
    text-align: center;
    margin:0 5px;
    color:#0498e3;
    background:#fff;
    border:1px solid #0498e3;
    border-radius:20px;
}
.pager .pager_num a.next,
.pager .pager_num a.prev{
}
.pager .pager_num span.current,
.pager .pager_num a:hover{
    color:#fff;
    background: #0498e3;
    opacity: 1;
}

/* 詳細ページナビ */
.pagenav{}
.pagenav span{
    display: block;
}

/* ビジュアルエディタ装飾 */
.freeeditor h1 {
	text-align: left;
	font-size: 140%;
	font-weight: bold;
	border-bottom: 3px solid #e8e7e3;
	padding-bottom: 5px;
	margin-bottom: 20px;
}

.freeeditor h2 {
	text-align: left;
	border: none;
	font-size: 130%;
	font-weight: bold;
	border-bottom: 2px solid #e8e7e3;
	padding-left: 0;
	padding-bottom: 5px;
	margin-bottom: 20px;
}

.freeeditor h3 {
	text-align: left;
	font-size: 120%;
	font-weight: bold;
	border-bottom: 1px solid #e8e7e3;
	padding-bottom: 5px;
	margin-bottom: 10px;
}

.freeeditor h4 {
	text-align: left;
	font-size: 110%;
	font-weight: bold;
	margin-bottom: 10px;
}

.freeeditor h5 {
	text-align: left;
	font-weight: bold;
	margin-bottom: 10px;
}

.freeeditor strong {
	font-weight: bold;
}

.freeeditor img.alignright { display: block; margin: 0 0 0 auto; }/* 配置位置 右 */
.freeeditor img.alignleft { display: block; margin: 0 auto 0 0; }/* 配置位置 左 */
.freeeditor img.aligncenter { display: block; margin: 0 auto; }/* 配置位置 中央 */


/* フッター */
#footer{
    position:relative;
    padding:60px 0 30px;
    color:#fff;
    background:linear-gradient(90deg,#27709f 0%,#00436e 100%);
}
#footer a{
    color:#fff;
}
#footer:before{
    content:'';
    position:absolute;
    top:110px;
    right:70%;
    width:798px;
    height:119px;
    background:url(images/footer/bg_logo.png) no-repeat;
    background-size:cover;
}
#footer .upper{
    padding-bottom:80px;
}
#footer h2{
    position:relative;
    padding-top:50px;
}
#footer h2 a{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
#footer h2 .logo{
    position:relative;
    height:119px;
    padding:30px 50px 30px 0;
    background:url(images/footer/bg_logoR.png) no-repeat 100% 0;
}
#footer h2 .logo .icon{
    margin-right:10px;
}
#footer h2 .logo .right{
    position:relative;
}
#footer h2 .shopname{
    position:absolute;
    top:47%;
    left:0;
    right:0;
    margin:auto;
    text-align: center;
    color:#323232;
    font-size:min(24px,2.6vw);
    font-weight:bold;
}
#footer .sitemap{
    margin:0 1%;
}
#footer .sitemap li{
    margin-bottom:15px;
    font-size:min(16px,2vw);
}
#footer .sitemap li a{
    display: flex;
}
#footer .sitemap li span{
    display: block;
}
#footer .sitemap li span.icon{
    width:10px;
    margin-right:8px;
}
#footer .contactArea{
    max-width: 330px;
    width:34%;
}
#footer .contactArea .box{
    position:relative;
    padding:60px 0;
    border:2px solid #fff;
    border-radius:10px;
}
#footer .contactArea .box h3{
    position:absolute;
    top:-20px;
    left:0;
    right:0;
    max-width: 240px;
    width:96%;
    margin:auto;
    padding:10px 0;
    text-align: center;
    font-size:min(15px,3vw);
    font-weight:bold;
    color:#00436e;
    background-color:#fff;
    line-height:1;
    border-radius:20px;
}
#footer .contactArea .box .inner{
    max-width: 245px;
    width:94%;
    margin:auto;
}
#footer .contactArea .box .contactbtn{
    max-width: 200px;
    width:100%;
    margin:0 auto 25px;
}
#footer .contactArea .box .telArea .tel span{
    display: block;
    margin:0 5px;
}
#footer .contactArea .box .telArea .tel .icon{
    width:32px;
}
#footer .contactArea .box .telArea .tel .num{
    font-size:min(34px,3.6vw);
    font-weight:bold;
    font-family: 'Barlow Condensed', sans-serif;
    line-height:1;
}
#footer .contactArea .box .telArea .time{
    margin-top:5px;
    text-align: center;
    font-size:min(14px,1.2vw);
}
#footer .copyright{
    text-align:right;
    font-size:min(12px,1vw);
}
@media only screen and (max-width: 1300px){
    #footer:before{
        right:80%;
    }
}
@media only screen and (max-width: 812px){
    #footer{
        padding:30px 0 20px;
    }
    #footer .upper{
        padding-bottom:30px;
    }
    #footer .upper.flex{
        display: block;
    }
    #footer:before{
        content:none;
    }
    #footer h2{
        max-width: 286px;
        height:auto;
        margin:0 auto 30px;
        padding:10px;
        background-color:#fff;
    }
    #footer h2 .logo{
        height:auto;
        padding:0;
        background:none;
    }
    #footer h2 .shopname{
        top:52%;
        font-size:22px;
    }
    #footer .sitemap{
        max-width: 300px;
        width:100%;
        margin:0 auto 40px;
    }
    #footer .sitemap li {
        margin-bottom: 10px;
        font-size: min(16px,2vw);
    }
    #footer .contactArea{
        width:100%;
        margin:auto;
    }
    #footer .contactArea .box{
        padding:40px 0 30px;
    }
    #footer .contactArea .box .contactbtn{
        margin-bottom:20px;
    }
    #footer .contactArea .box .telArea .tel .icon{
        width:25px;
    }
    #footer .contactArea .box .telArea .tel .num{
        font-size:min(30px,8vw);
    }
    #footer .copyright{
        text-align: center;
    }
}
@media only screen and (max-width: 812px){
}

/* フッター追尾 */
#footer-btn {
    display: block;
    width: 100%;
    height:100px;
    left: 0px;
    bottom: 0;
    z-index: 9999;
    color:#fff;
    background:linear-gradient(90deg,#27709f 0%,#00436e 100%);
    border-top:1px solid #fff;
}
#footer-btn .container{
    position: relative;
    max-width:1060px;
    width:96%;
    margin:auto;
}
.footer-btn-wrapper{
    position: relative;
}
.footer-btn-wrapper .inner{
    width:100%;
}
.footer-btn-wrapper .totop{
    position: absolute;
    top:-30px;
    right:-5%;
}
.footer-btn-wrapper .woman{
    position: absolute;
    left:0;
    max-width: 192px;
}
.footer-btn-pc{
    padding: 20px 0 10px;
}
.footer-btn-wrapper .tit{
    max-width: 375px;
    width:36%;
    margin-left:15%;
}
.footer-btn-wrapper .contactbtn{
    max-width: 200px;
    width:22%;
    margin:0 1%;
    padding-top:10px;
}
.footer-tel {
    max-width:270px;
    width:30%;
    padding-top:10px;
}
.footer-tel .telArea .tel{
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-align-items: center;
    align-items: center;
}
.footer-tel .telArea .tel span{
    display: block;
    margin:0 5px;
}
.footer-tel .telArea .tel .icon{
    width:32px;
}
.footer-tel .telArea .tel .num{
    font-size:min(36px,5vw);
    font-weight:bold;
    font-family: 'Barlow Condensed', sans-serif;
    line-height:1;
    letter-spacing: 0.05em;
}
.footer-tel .telArea .tel .num a{
    color:#fff;
}
.footer-btn-sp{
    display: none;
}
@media (max-width: 1200px) {
    .footer-btn-wrapper .totop{
        top:-30px;
        right:-1%;
    }
    .footer-btn-pc{
        padding:15px 0 10px;
    }
}
@media (max-width: 999px) {
    #footer-btn{
        height:auto;
    }
    .footer-btn-wrapper .woman{
         display: none;
    }
    .footer-btn-wrapper .totop{
        display: none;
    }
    .footer-btn-sp{
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 5px 0 10px;
        position: relative;
    }
    .footer-btn-sp p{
        margin:10px 1%;
    }
    .footer-btn-wrapper .contactbtn{
        max-width: inherit;
        width:inherit;
        padding-top:0;
    }
}
@media (max-width:414px) {
    .footer-btn-wrapper .totop{
        width:30px;
        top:-20px;
        right: 1%;
    }
}

/* error */
.error {
	margin: 30px auto;
}

.error h2 {
	font-size: 18px;
	margin-bottom: 15px;
}

/* gotop */
#top {
	position: relative;
    overflow: hidden;
}

.gotop {
	position: fixed;
	right: 10px;
	bottom: 50px;
    width:58px;
    height: 58px;
	z-index: 4;
    background: url(images/common/pagetop.png) no-repeat;
    background-size:100%;
}

/************************************************
      PC
************************************************ */
@media only screen and (min-width: 1000px){
    .sp{display: none;}
}

/************************************************
レスポンシブ
************************************************ */
@media only screen and (max-width: 1380px){
    
}

@media only screen and (max-width: 1060px){
    .contentWrp{
        width: 96%;
        margin: auto;
        position: relative;
    }
}
@media only screen and (max-width: 999px){
    .pc{
        display: none;
    }
    /* ドロワー */
    .drawer-hamburger {
        position: fixed;
        z-index: 104;
        top:10px;
        display: block;
        box-sizing: content-box;
        width: 4rem;
        padding: 0;
        padding-top: 3px;
        padding-right: .75rem;
        padding-bottom: 20px;
        padding-left: .75rem;
        -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
        transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        border: 0;
        outline: 0;
        background-color:#366ba1;
        border: 2px solid #fff;
        -webkit-border-radius: 8px;
        -moz-border-radius: 8px;
        border-radius: 8px;
    }
    .drawer--right .drawer-hamburger{
        right:10px;
    }
    .drawer--right.drawer-open .drawer-hamburger {
        right: 370px;
    }
    .drawer-hamburger .tit{
        display: block;
        max-width: 34px;
        width:100%;
        padding-top:25px;
        margin: 0 auto -16px;
    }
    .drawer-nav {
        position: fixed;
        z-index: 101;
        top: 0;
        overflow: hidden;
        width:370px;
        height: 100%;
        color: #000;
        background-color:#eee;
        z-index: 10000;
    }
    .drawer--right .drawer-nav {
        right: -370px;
        -webkit-transition: right .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
        transition: right .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
    }
    .drawer-nav ul li {
	    width: 100%;
	    text-align: left;
	    font-size: 14px;
        background:#fff;
        border-bottom: 1px solid #e6e6e6;
    }
    .drawer-nav ul li.white{
        background:#366ba1;
        padding: 8px;
    }
    .drawer-nav ul li .tit{
        display: block;
        padding-left:10px;
        text-align: left;
    }
    .drawer-nav ul li a {
	    color: #000;
	    display: block;
        padding: 8px;
    }
    .drawer-nav ul li .child{
        padding: 5px 10px 10px;
    }
    .drawer-nav ul li .child li{
        float:left;
        width:49%;
        margin:0 0.5% 1px;
        text-align: center;
        border-bottom: none;
        background: #ebebeb;
        border-radius: 5px;
    }
    .drawer-nav ul li .child li a{
        padding:2px 0;
    }
    .drawer-nav ul li:last-child{
        border-bottom: 0;
    }
    .drawer-hamburger-icon, .drawer-hamburger-icon::before, .drawer-hamburger-icon::after {
        background-color: #fff;
    }
    .drawer-nav .telarea {
        padding: 10px;
    }
    .drawer-nav .telarea .icon,
    .drawer-nav .telarea .number {
        display: inline-block;
        vertical-align: middle;
    }
    .drawer-nav .telarea .icon {
        margin-right: 5px;
    }
    .drawer-nav .telarea .number {
        text-align: center;
    }
    .drawer-nav .telarea .number .tel {
        font-size: 18px;
        font-weight: bold;
    }
    .drawer-nav .telarea .contact{
        max-width: 216px;
        width:100%;
        margin:auto;
    }
    .drawer-nav .telarea .a8_tel img{
        max-width: 216px;
        margin:auto;
    }
    .footer-btn-pc{
        display: none !important;
    }
}

@media only screen and (min-width: 1000px){
    .drawer-hamburger{
        display: none;
    }
}

/************************************************
        Tablet max-width: 812px
************************************************ */
@media only screen and (max-width: 812px){
    img {
      width: 100%;
      height: auto;
    }

    body {
      line-height: 1.6;
    }
    .pt30{ padding-top:20px !important;}
    .pt40,.pt60,.pt80{ padding-top:30px !important;}
    .pb40{ padding-bottom:25px !important;}
    .pb50{ padding-bottom:30px !important;}
    .pb60,.pb80{ padding-bottom:30px !important;}
    .pb100{ padding-bottom:50px !important;}
    .pt50{ padding-top:25px !important;}
    .pt150{ padding-top:50px !important;}
    .mt40,.mt50 { margin-top: 25px !important;}
    .mb40,.mb50 { margin-bottom: 25px !important;}
    .mb60,.mb70 { margin-bottom: 30px !important;}
    .mb100 { margin-bottom: 40px !important;}
    .fs14{ font-size: 13px;}
    .fs18{ font-size: 16px;}
    .fs20{ font-size: 18px;}
    .fs24,.fs26,.fs28,.fs30{ font-size: 20px;}
    .fs36 { font-size: 24px;}
    .fs40{ font-size: 30px;}
    
    .pc,
    .mini {
    	display: none;
    }
    .sp{display: block;}

    /* ヘッダー */
    #header {
        height: auto;
    }    
    #header .logoArea{
        padding:20px 0;
    }


    /* セクション共通 */
    .flex {
      flex-wrap: wrap;
    }
    .flex_i1{
        flex: inherit;
    }
    .flex_i1s {
        width: 49%;
    }
    .halfWrp .floatL, .halfWrp .floatR{
        float:none;
        width:100%;
        margin:0 auto 15px;
    }
    .breadcrumb{
        font-size: 10px;
    }    
    
    .pager .pager_num span, .pager .pager_num a{
        padding-top:3px;
    }
    .pagenav span{
        font-size: 12px;
    }

    /* gotop */
    .gotop {
    	right: 10px;
    	bottom: 10px;
    	width:40px;
        height: 40px;
    }

    /* メールフォームテンプレート */
    #inquiryForm td{
        padding:15px;
    }

    textarea,
    input[type="text"] {
    	width:100%;
      font-size: 16px;
    }

    .mwform-tel-field input[type="text"] {
      width: 28%;
    }

    .policycheck {
    	margin-bottom: 10px;
    }

    #submitback {
    	display: block;
    	margin-right: 0px;
    	margin-bottom: 10px;
    }

    /* プライバシーポリシー */
    #privacypolicy h3 {
        font-size: 18px;
        line-height: 1.2;
    }

    /* pagenavi */
    .pagenavi {
        margin-top:30px;
    	font-size: 100%;
    	line-height: 1.6;
    }

    /* フッター */
    #footer .footerTop .bgImg .box .inner{
        padding: 30px 0;
    }
    #footer .footer_wrap .dp_flex{
        display: block;
    }
    #footer .footer_wrap .foot_info{
        width:100%;
        margin:0 auto 20px;
    }
    #footer .footmenu_wrap{
        width: 100%;
        margin:auto;
    }
}

/************************************************
      Smartphone max-width: 640px
************************************************ */
@media only screen and (max-width: 640px){
}

/************************************************
    Smartphone max-width: 414px
************************************************ */
@media only screen and (max-width: 414px){
    .pb50,.pb100 {padding-bottom: 30px !important;}
    .pt150 {padding-top: 30px !important;}
    .mb30{margin-bottom:15px !important;}
    .mb60{margin-bottom:30px !important;}
    .mb80{margin-bottom:40px !important;}
    .mini {
    	display: block;
    }
    body{font-size:13px;}
    .fs14{ font-size: 11px;}
    .fs16{ font-size: 100%;}
    .fs18{ font-size: 110%;}
    .fs20{ font-size: 16px;}
    .fs24{ font-size: 16px;}
    .fs26,.fs28{ font-size: 18px;}
    .fs30{ font-size: 20px;}
    .fs40{ font-size: 26px;}

    .h2 {
        font-size: 20px;
        margin-bottom: 20px;
    }

    #header .logoArea{
        font-size: 20px;
    }
    #header .logoArea .logo {
        max-width: 40px;
    }

    .drawer-hamburger{
        width:2.8rem;
    }
    .drawer--right.drawer-open .drawer-hamburger {
        right: 260px;
    }
    .drawer-hamburger-icon{
        margin-top:3px;
    }
    .drawer-hamburger .tit{
        margin: 0 auto -20px;
        padding-top:20px;
    }
    .drawer--right .drawer-nav{
        right:-300px;
    }
    .drawer-nav{
        width:260px;
    }
    .drawer-nav ul li{
        font-size: 12px;
    }
}

/************************************************
  Smartphone max-width: 375px
************************************************ */
@media only screen and (max-width: 376px){
    .drawer-nav ul li .child li{
        float:none;
        width:100%;
        line-height: 2;
    }
}

/************************************************
  Smartphone max-width: 330px
************************************************ */
@media only screen and (max-width: 330px){
}
