@charset "utf-8";
/*
Theme Name: 100 Repair
Theme URI: http://us-eye.biz
Author: TAICHI KIMURA（ユーズアイ）
Author URI: http://us-eye.biz
Version: 1.0.0
Copyright (C) 2020 TAICHI KIMURA（ユーズアイ）.
*/

@import url("/fonts/fontawesome/css/all.min.css");

/* CSS Reset */
a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,iframe,img,input,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,textarea,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;vertical-align:baseline;text-decoration:none}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:400}legend{color:#000}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}
html{
    background-color: transparent;
	background-image: none;
	width: auto;
    color: #000;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
body{
	width: 100%;
	font-size: 16px;
    line-height: 1.6;
    font-family: 'メイリオ' , Meiryo , Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	margin: 0;
    font-weight: 400;
	background-color: #fff;
	color: #000;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
    background-image: url('/images/main_bg.jpg');
    background-repeat: repeat-y;
    background-size: 100% auto;
    position: relative;
    word-wrap : break-word;
    overflow-wrap : break-word;
    padding-bottom: 70px;
}
body.lp{
    padding-bottom: 0;
    font-size: 18px;
    line-height: 1.8;
    color: #000;
}
*{
	box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    background-repeat: no-repeat;
}
a,a:visited{
	color: #000;
	display: inline;
	text-decoration: none;
}
a:hover{
	text-decoration: none;
    color: #000;
}
span{
	display: inline;
}
strong,.strong{
	font-weight: 900;
}
del{
    text-decoration: line-through;
}
h1,h2,h3,h4,h5,h6{
	display: inline-block;
    font-weight: normal;
    font-size: 100%;
    line-height: 1.4;
}
img{
	width: auto;
	height: auto;
    max-width: 100%;
}
.clearfix{
	overflow: hidden;
	zoom: 1;
}
.clearfix:after{
	content: "";
	display: block;
	clear: both;
}
ul,ol{
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
}
li{
    list-style: none;
}
q:before,
q:after{
    content: '';
}
blockquote{
    padding: 30px 55px 30px 55px;
    background-color: #f0f0f0;
    margin-bottom: 2em;
    position: relative;
}
blockquote p,
blockquote a{
    color: #333;
    font-size: 0.8em;
}
blockquote a{
    color: #777;
}
blockquote p:last-of-type{
    margin-bottom: 0;
}
blockquote:before{
    font-family: 'Font Awesome 5 Pro';
    font-weight: 900;
    color: #aaa;
    position: absolute;
    content: '\f10d';
    font-size: 32px;
    top: 0;
    left: 10px;
    margin: auto;
}
blockquote:after{
    font-family: 'Font Awesome 5 Pro';
    font-weight: 900;
    color: #aaa;
    position: absolute;
    content: '\f10e';
    font-size: 32px;
    bottom: 0;
    right: 10px;
    margin: auto;
}
table{
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
    table-layout: fixed;
}
table tbody{
    width: 100%;
}
table tr{
    display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content: space-around;
	align-items: stretch;
}
table th{
    width: 100%;
    padding: 10px 15px;
    display: block;
}
table td{
    width: 100%;
    padding: 10px 15px;
    display: block;
}
input,textarea,select{
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
}
input[type="text"],
input[type="tel"],
input[type="password"],
input[type="email"]{
	width: 100%;
	-webkit-box-shadow: 0 2px 0 rgba(255,255,255,0.5), 0 2px 3px 0 rgba(0,0,0,0.15) inset;
	-moz-box-shadow: 0 2px 0 rgba(255,255,255,0.5), 0 2px 3px 0 rgba(0,0,0,0.15) inset;
	box-shadow: 0 2px 0 rgba(255,255,255,0.5), 0 2px 3px 0 rgba(0,0,0,0.15) inset;
	border-top: 1px solid #bbb;
	border: 1px solid #d0d0d0;
	height: 43px;
	padding: 3px 7px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	outline: 0;
	outline-width: 0;
    line-height: 1.3;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}
select{
	padding: 1px 10px;
	border-radius: 3px;
	border-top: 1px solid #bbb;
	border: 1px solid #d0d0d0;
	-webkit-box-shadow: 0 2px 0 rgba(255,255,255,0.5), 0 2px 3px 0 rgba(0,0,0,0.15) inset;
	-moz-box-shadow: 0 2px 0 rgba(255,255,255,0.5), 0 2px 3px 0 rgba(0,0,0,0.15) inset;
	box-shadow: 0 2px 0 rgba(255,255,255,0.5), 0 2px 3px 0 rgba(0,0,0,0.15) inset;
	font-family: Arial,sans-serif;
	height: 31px;
    line-height: 1.3;
}
textarea{
	border-radius: 1px;
	-webkit-border-radius: 1px;
	border-top: 1px solid #bbb;
	border: 1px solid #d0d0d0;
	-webkit-box-shadow: 0 2px 0 rgba(255,255,255,0.5), 0 2px 3px 0 rgba(0,0,0,0.15) inset;
	-moz-box-shadow: 0 2px 0 rgba(255,255,255,0.5), 0 2px 3px 0 rgba(0,0,0,0.15) inset;
	box-shadow: 0 2px 0 rgba(255,255,255,0.5), 0 2px 3px 0 rgba(0,0,0,0.15) inset;
	outline: 0;
	outline-width: 0;
	-webkit-appearance: none;
	font-size: 15px;
	line-height: 1.3;
	padding: 5px;
	width: 100%;
}
input[type="submit"]{
    appearance: none;
    user-select: none;
    white-space: none;
    text-align: center;
    cursor: default;
    color: #000;
    background-color: #fff;
    padding: 0;
    border-width: 0;
    -webkit-appearance: none;
}
.aligncenter{
	display: block;
    margin: 0 auto 30px auto !important;
	text-align: center !important;
}
.alignright{
	float: right !important;
    margin: 0 0 30px 30px;
}
.alignleft{
	float: left !important;
    margin: 0 30px 30px 0;
}
.alignnone{
    margin: 0 0 30px 0 !important;
}
.flex{
    display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-content: space-around;
	align-items: stretch;
}
.txt-xxl{
    font-size: 130% !important;
}
.txt-xl{
    font-size: 120% !important;
}
.txt-l{
    font-size: 110% !important;
}
.txt-s{
    font-size: 88% !important;
}
.alpha{
    transform: skewX(-15deg);
    font-family: serif;
    display: inline-block;
}
.linkmark:before{
    font-family: 'Font Awesome 5 Pro';
    margin: 0 4px 0 0;
    font-weight: 400;
    content: '\f324';
}
.linkmark-before{
    margin: 0 0 0 20px;
    position: relative;
}
.linkmark-before:before{
    position: absolute;
    font-family: 'Font Awesome 5 Pro';
    margin: 0 4px 0 0;
    font-weight: 400;
    content: '\f101';
    left: -16px;
    top: 2px;
}
.disc-blue{
    padding-left: 0 !important;
}
.disc-blue > li{
    list-style: none !important;
}
.disc-blue > li:before{
    position: relative;
    font-family: 'Font Awesome 5 Pro';
    content: '\f111';
    font-weight: 900;
    color: #044271;
    margin: 0 3px 0 0;
}
.list-dash > li{
    list-style: none !important;
}
.list-dash > li:before{
    position: relative;
    content: '―';
    margin: 0 3px 0 0;
}

.f_mincho{
    font-family: serif;
}
.f_strong{
    font-weight: 900;
}
.f_pink{
    color: #e34373;
}
.f_red{
    color: #b80000;
}
.f_bold{
    font-weight: 900;
}
.u_line{
    text-decoration: underline;
}
.big-txt{
    text-align: center;
    font-size: 28px;
    line-height: 1.3;
    font-weight: 900;
    margin: 2em 0;
}
.mtop0{
    margin-top: 0 !important;
}
.mtop30{
    margin-top: 30px !important;
}
.mtop50{
    margin-top: 50px !important;
}
.mtop100{
    margin-top: 100px !important;
}
.mbot0{
    margin-bottom: 0 !important;
}
.mbot10{
    margin-bottom: 10px !important;
}
.mbot30{
    margin-bottom: 30px !important;
}
.mbot50{
    margin-bottom: 50px !important;
}
.mbot100{
    margin-bottom: 100px !important;
}

.t_center{
    text-align: center !important;
}
.b_center{
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.b_left{
    display: block;
    margin-left: 0;
    margin-right: auto;
}
.b_right{
    display: block;
    margin-left: auto;
    margin-right: 0;
}

figure > img{
    margin-bottom: 5px !important;
}
figure > figcaption{
    font-size: 90%;
    text-align: center;
}

/*-------------------------
アニメーション
-------------------------*/
/*ホバーエフェクト*/
.h_effect{
    transition: all .2s;
}
.h_effect:hover{
    opacity: .8;
}

/*-------------------------
COMMON
-------------------------*/
#wrapper{
    position: relative;
    overflow: hidden;
}
#wrapper:before{
    content: '';
    background-color: #fff;
    width: 100%;
    top: 0;
    bottom: 0;
    position: absolute;
    z-index: -100;
}
#main{
    width: 100%;
    display: block;
}
#content{
    padding-top: 30px;
    padding-bottom: 150px;
}
.house-lp #content{
    padding-top: 0;
    padding-bottom: 0;
}

.out-container{
    width: 94%;
    margin-left: auto;
    margin-right: auto;
}
.container{
    width: 94%;
    max-width: 1150px;
    margin-left: auto;
    margin-right: auto;
}
.lp-container{
    width: 94%;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}
.lp #content{
    padding: 0;
}
.bg-white{
    background-color: #fff;
}

.head-bg{
    margin-top: -20px;
}
.head-bg img{
    display: block;
}

/*サイドバーあり*/
.page-sidebar #main{
    width: 70%;
}

/*全幅ページ*/
.page-full{
    width: 100%;
}
.page-full #main{
    width: 100%;
}

/*サイドバー幅*/
#sidebar{
    width: 25%;
}

/*コンテンツ中の背景*/
.content-bg:before,
.content-bg:after{
    position: absolute;
    z-index: -100;
    left: 0;
    width: 94vw;
    width: 100%;
    height: 1000px;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    opacity: .5;
}

.pc{
    display: block;
}
.sp{
    display: none;
}


/*-------------------------
HEADER
-------------------------*/
#masthead .bg{
    padding: 0 0 15px 0;
}
#site-title h1,
#site-title p{
    padding: 4px 0 0 0;
    font-size: 12px;
    z-index: 100;
    line-height: 1.2;
}
.header-inner{
    margin: 5px auto 0 auto;
    height: 80px;
    align-content: flex-start;
}
.logo-area{
    margin: 0;
    width: 350px;
    z-index: 100;
}
.head-cta-area{
    width: 600px;
    margin: 0;
    justify-content: flex-end;
}
.head-line-link{
    width: 150px;
    display: inline-block;
}
.head-tel-link{
    width: 200px;
    display: inline-block;
    margin: 0 0 0 15px;
}
.head-mail-link{
    width: 150px;
    display: inline-block;
    margin: 0 0 0 15px;
}

#sp-cta,
#sp-nav-btn{
    display: none;
}

/*PCメインメニュー*/
#pc-gnav{
    padding-top: 20px;
    padding-bottom: 20px;
}
#pc-gnav > ul{
    justify-content: center;
}
#pc-gnav ul > li{
    min-width: 80px;
    border-right: 1px solid #ccc;
    position: relative;
}
#pc-gnav ul > li:last-of-type{
    border-right: none;
}
#pc-gnav ul > li > a{
    color: #555;
    padding: 2px 15px;
    text-align: center;
    display: block;
    width: 100%;
    font-size: 15px;
    font-weight: 900;
    transition: all .2s;
}
#pc-gnav > ul > li > a:hover{
    color: #4c88c4;
}
#pc-gnav ul > li > ul{
    display: none;
    position: absolute;
    top: 100%;
    width: 180px;
    z-index: 1000;
    background-color: #0a375e;
    background-color: #4c88c4;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
}
#pc-gnav ul > li > ul > li{
    border-right: none;
    width: 100%;
    border-bottom: 1px solid #ccc;
}
#pc-gnav ul > li > ul > li > a{
    text-align: left;
    padding: 10px 0 10px 10px;
    display: block;
    color: #fff;
    background-color: transparent;
    transition: background .2s, color .2s;
}
#pc-gnav ul > li > ul > li > a:hover{
    background-color: #fff;
    color: #0a375e;
}

#sp-gnav{
    display: none;
}


/*-------------------------
INDEX
-------------------------*/
#main-banner{
    
}
#main-banner img.pc-banner{
    display: block;
}
#main-banner img.sp-banner{
    display: none;
}
#first-achieve-area{
    text-align: center;
}
#first-achieve-area img{
    display: block;
    margin: 0 auto;
}

#first-voice-area{
    padding: 0 0 20px 0;
    position: relative;
    text-align: center;
}
#first-voice-area:before{
    content: '';
    background-image: url('/images/top_bg1.webp');
    bottom: 0;
    opacity: 1;
    width: 100%;
}
.first-voice-img{
    width: 70%;
    margin: 0 auto;
}
.first-voice{
    font-family: serif;
    font-weight: 900;
    margin-bottom: 30px;
}
.first-voice p{
    text-align: center;
    font-size: 30px;
    margin-bottom: 10px;
}
.first-voice p.name{
    text-align: center;
    font-size: 16px;
}
.first-customers{
    max-width: 850px;
    margin: 0 auto;
    align-items: flex-start;
}
.first-customers img{
    width: 100%;
}
#first-horizonal-area{
    height: 237px;
    width: 100%;
}
.loop{
    width: 100%;
    height: 237px;
    background: url(/images/top-scroll.webp) repeat-x;
    background-position: center;
    background-size: auto 100%;
    animation: bgloop 60s linear infinite;
}
@keyframes bgloop{
    from{
        background-position: 0 0;
    }
    to{
        background-position: -6468px 0;
    }
}

section[class*="top-"]{
    font-size: 18px;
}

.top-announce-area{
    padding: 10px;
    border: 1px dashed #333;
    
}
.top-announce-area .txt-content p,
.top-announce-area .txt-content ul{
    font-size: 14px;
    font-weight: normal;
    margin-bottom: 1em;
}
.top-announce-area .txt-content ul > li{
    list-style: disc;
}

.top-problem{
    margin: 0 auto;
    padding: 20px 0;
}
.top-problem .head{
    text-align: center;
    font-size: 28px;
    font-weight: 900;
    color: #e34373;
}
.top-problem ul{
    margin: 40px 0 40px 8%;
}
.top-problem ul > li{
    margin: 0 0 10px 0;
    padding: 0 0 0 16px;
    font-size: 20px;
    font-weight: 900;
}
.top-problem ul > li:before{
    font-family: 'Font Awesome 5 Pro';
    font-weight: 900;
    content: '\f058';
    color: #77b993;
}

.top-case-area,
.top-voice-area,
.top-emotion-area,
.top-work-area{
    padding: 50px 0 0 0;
}
.top-case-area .h2-area,
.top-voice-area .h2-area,
.top-emotion-area .h2-area,
.top-work-area .h2-area{
    text-align: center;
    padding: 50px 0 30px 0;
}
.top-case-area .h2,
.top-voice-area .h2,
.top-emotion-area .h2,
.top-work-area .h2{
    font-weight: 900;
    font-size: 28px;
    color: #3e3a39;
}

.top-case-area:before{
    content: '';
    background-image: url('/images/top_bg3.webp');
}

.top-case{
    padding: 20px 30px;
    border: 1px solid #4c88c4;
    margin: 0 auto 30px auto;
    background-color: #fff;
}
.top-case .h3{
    font-size: 20px;
    font-weight: 900;
}
.top-case .top-ba{
    align-items: center;
}
.top-case .top-ba img{
    width: 46%;
}
.top-case .arrow{
    width: 6%;
    text-align: center;
}
.top-case .arrow i{
    font-size: 60px;
    color: #40220f;
}
.top-case .info{
    margin-top: 10px;
}

.top-voice-area:before{
    content: '';
    height: 2000px;
    background-image: url('/images/top_bg4.webp');
}
.top-voice-img{
    margin-bottom: 25px;
}
.top-voice-img img{
    display: block;
}
.top-voice{
    border: 1px solid #ccc;
    padding: 10px 20px;
    margin-bottom: 25px;
    background-color: #fff;
}
.top-voice p{
    font-size: 20px;
    color: #204288;
    font-weight: 900;
    margin: 0 0 10px 0;
}
.top-voice p:last-of-type{
    margin-bottom: 0;
}
.top-voice p:not(.name):before{
    font-family: 'Font Awesome 5 Pro';
    content: '\f4a2';
    font-weight: 900;
    margin: 0 10px 0 0;
}
.top-voice p.name{
    color: #333;
    text-align: right;
    font-size: 16px;
}

.top-emotion-area{
    padding: 70px 0 0 0;
}
.top-emotion-area .h2{
    color: #e34373;
}
.top-emotion-area:before{
    content: '';
    background-color: #fff;
    opacity: 1;
}
.top-emotion-area > .flex{
    align-items: center;
}
.top-emotion{
    width: 48%;
}
.top-emotion-area > .flex > img{
    width: 48%;
}

.top-credo-area{
    font-family: serif;
    text-align: center;
    font-weight: 900;
    padding: 50px 0 0 0;
}
.top-credo-area:before{
    content: '';
    background-color: #fff;
    opacity: 1;
}

.top-credo-area .h2-area{
    margin-bottom: 50px;
}
.top-credo-area .h2{
    color: #837144;
    font-size: 24px;
    font-weight: 900;
}
.top-credo{
    margin-bottom: 50px;
    font-size: 18px;
    font-weight: 400;
}
.top-credo-area .h3{
    font-weight: 900;
}

.top-work-area:before{
    content: '';
    background-image: url(/images/top_bg5.webp);
    opacity: 1;
}
.top-work-area .h2{
    color: #4c88c4;
}
.top-work-area .inner .flex{
    align-items: center;
}
.top-work-txt{
    width: 48%;
}
.top-work-img{
    width: 48%;
    text-align: center;
}
.top-work-img img{
    margin: 0 auto;
}
.top-work-area ul{
    border: 1px solid #ccc;
    padding: 15px 20px;
    margin-bottom: 30px;
    background-color: #fff;
}
.top-work-area ul > li{
    position: relative;
    padding: 0 0 3px 25px;
    font-size: 120%;
}
.top-work-area ul > li:last-of-type{
    padding-bottom: 0;
}
.top-work-area ul > li:before{
    position: absolute;
    font-family: 'Font Awesome 5 Pro';
    content: '\f111';
    left: 0;
    top: 0;
    margin: auto;
    color: #4c88c4;
    font-weight: 900;
}

.top-commit-area{
    padding: 70px 0 20px 0;
    text-align: center;
    font-family: serif;
    font-weight: 900;
}
.top-commit-area:before{
    content: '';
    background-color: #fff;
    opacity: 1;
}
.top-commit-area .h2-area{
    margin: 0 0 50px 0;
}
.top-commit-area .h2{
    color: #837144;
    font-weight: 900;
    font-size: 24px;
}
.top-commit-area .h3{
    font-weight: 900;
    font-size: 20px;
    margin: 0 0 10px 0;
}
.top-commit{
    margin-bottom: 50px;
    font-weight: 400;
    font-size: 18px;
}
.more-area{
    text-align: center;
    margin: 50px 0 20px 0;
}
.more-area a{
    display: inline-block;
    color: #fff;
    background-color: #ec5b55;
    border-radius: 4px;
    line-height: 60px;
    width: 350px;
    max-width: 94%;
    font-size: 16px;
    font-family: 'メイリオ' , Meiryo , Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: 100;
}
.more-area a:before{
    font-family: 'Font Awesome 5 Pro';
    content: '\f002';
    font-weight: 900;
    margin: 0 10px 0 0;
}

.frame-1-top,
.frame-2-top{
    padding: 50px 0 30px 0;
}


/*-------------------------
PAGE
-------------------------*/
/*COMMON*/
.page-header,
.cat-header{
    position: relative;
    padding: 60px 0;
    background-size: 100% auto;
    background-position: center center;
    max-height: 170px;
}
.emotion .page-header{
    background-image: url('/images/head-bg-emotion.jpg');
}
.story .page-header{
    background-image: url('/images/head-bg-story-1.jpg');
}
.profile .page-header{
    background-image: url('/images/head-bg-profile.jpg');
}
.credo .page-header{
    background-image: url('/images/head-bg-credo-1.jpg');
}
.company .page-header,
.not-found .page-header{
    background-image: url('/images/head-bg-company-1.jpg');
}
.qa .page-header{
    background-image: url('/images/head-bg-qa.jpg');
}
.free-quote .page-header,
.free-quote-thanks .page-header{
    background-image: url('/images/head-bg-free-quote.jpg');
}
.consulting .page-header,
.consulting-thanks .page-header,
.contact .page-header,
.contact-thanks .page-header{
    background-image: url('/images/head-bg-consulting.jpg');
}
.privacy .page-header{
    background-image: url('/images/head-bg-privacy.jpg');
}
.before-after .cat-header{
    background-image: url('/images/head-bg-before-after.jpg');
}
.voices .cat-header,
.cat-header{
    background-image: url('/images/head-bg-voices.jpg');
}

.page-header .page-title,
.cat-header .page-title{
    display: inline-block;
    width: 100%;
    font-size: 40px;
    font-weight: 900;
    color: #fff;
    text-shadow: #000 2px 2px 2px;
}
.page-header .page-title span,
.cat-header .page-title span{
    font-size: 60%;
}
.page-inner{
    font-size: 18px;
    text-shadow: #fff 2px 2px 2px;
}
.page-inner .h2{
    display: inline-block;
    width: 100%;
    font-size: 24px;
    font-weight: 900;
    margin: 2em 0 1em 0;
}
.page-inner .h3,
.lp-inner .h3{
    display: inline-block;
    width: 100%;
    font-size: 28px;
    font-weight: 900;
    padding: 0;
    margin: 2em 0 1em 0;
}
.page-inner .h3-area,
.lp-inner .h3-area{
    text-align: center;
    font-family: serif;
    font-weight: 900;
    margin-top: 6em;
    margin-bottom: 3em;
    position: relative;
    color: #00436e;
}
.page-inner .h3-area .h3,
.lp-inner .h3-area .h3{
    margin-top: 0;
    margin-bottom: 0;
}
.page-inner .h3-area span{
    font-size: 20px;
}

.page-inner .h4{
    display: inline-block;
    width: 100%;
    font-weight: 900;
    font-size: 20px;
    text-align: left;
    margin: 1em 0 0.5em 0;
}
/*
.page-inner .h5{
    display: inline-block;
    width: 100%;
    font-weight: 900;
    font-size: 22px;
    line-height: 1.3;
    text-align: center;
    margin: 1em 0 0.5em 0;
}*/


.page-inner > *:first-child,
.page-inner .h2 + .h3,
.page-inner .h3 + .h4,
.page-inner .h4 + .h5,
.page-inner .h5 + .h6{
    margin-top: 0 !important;
}
.page-inner p{
    margin: 0 0 25px 0;
    line-height: 1.7;
}
.page-inner ul,
.page-inner ol{
    margin: 1em 0;
    padding: 0 0 0 35px;
}
.page-inner * > li{
    margin: 0 0 8px 0;
    line-height: 1.3;
}
.page-inner ul > li{
    list-style: disc;
}
.page-inner ol > li{
    list-style: decimal;
}
.page-inner * > li > ul,
.page-inner * > li > ol{
    padding: 0 0 0 25px;
}
.page-inner img{
/*    box-shadow: 0 0 6px 6px #fff;*/
    margin-bottom: 30px !important;
}
.page-inner a{
    color: #4c88c4;
}
.content-head{
    position: relative;
    margin: 0 0 30px 0;
}
.content-head img{
    margin: 0 !important;
}
.content-head span{
    position: absolute;
    margin: auto;
    top: 35%;
/*    bottom: 0;*/
    left: 30px;
    right: auto;
    font-size: 20px;
    font-weight: 900;
}

.consulting .content-head span,
.free-quote .content-head span{
    color: #fff;
    text-shadow: #000 1px 1px 1px;
}

/*想い*/
.emotion-first-area:before{
    content: '';
    background-image: url('/images/emotion_bg1.jpg');
}
.emotion-shippai-area:before{
    content: '';
    background-image: url('/images/emotion_bg2.jpg');
}
.emotion-veteran-area:before{
    content: '';
    background-image: url('/images/emotion_bg3.jpg');
}
.emotion-mind-area:before{
    content: '';
    background-image: url('/images/emotion_bg4.jpg');
}
.emotion-mukiau-area:before{
    content: '';
    background-image: url('/images/emotion_bg5.jpg');
}
.emotion-gijutsu-area:before{
    content: '';
    background-image: url('/images/emotion_bg6.jpg');
}
.emotion-tagyousha-area:before{
    content: '';
    background-color: #f9f7f4;
/*
    content: '';
    background-image: url('/images/emotion_bg7.jpg');
*/
}
.emotion-wakaranai-area:before{
    content: '';
    background-image: url('/images/emotion_bg7.jpg');
}
.emotion-sekinin-area:before{
    content: '';
    background-image: url('/images/emotion_bg8.jpg');
    bottom: 0;
}

/*経歴*/
.story-shinsai-area:before{
    content: '';
    background-image: url('/images/story_bg1.jpg');
}
.story-door-area:before{
    content: '';
    background-image: url('/images/story_bg2.jpg');
}
.story-kibishisa-area:before{
    content: '';
    background-image: url('/images/story_bg5.jpg');
    opacity: 1;
}
.story-kandou-area:before{
    content: '';
    background-image: url('/images/story_bg3.jpg');
}
.story-mirai-area:before{
    content: '';
    background-image: url('/images/story_bg4.jpg');
    bottom: 0;
}

/*QA*/
.the-qa{
    border: 1px solid #c1dde1;
    margin: 0 0 30px 0;
}
.the-qa-q{
    background-color: #f0f0f0;
    padding: 15px 15px;
}
.the-qa h3{
    text-align: left;
    font-size: 20px;
    margin: 0;
    font-weight: 900;
}
.the-qa h3:before{
    content: 'Q.';
    color: #328499;
    margin: 0 3px 0 0;
}
.the-qa-a{
    padding: 15px 15px;
}
.the-qa-a img{
    border: 1px solid #ddd;
    margin: 0 !important;
}
.the-qa h4{
    text-align: left;
    font-size: 20px;
    margin: 0 0 1em 0;
    font-weight: 900;
}
.the-qa h4:before{
    content: 'A.';
    color: #d36c72;
    margin: 0 3px 0 0;
}
.the-qa-a > p:last-of-type{
    margin-bottom: 0;
}
.the-qa h5{
    margin: 1em 0 0.5em 0;
    font-weight: 900;
    color: #172681;
    font-size: 18px;
    width: 100%;
    display: inline-block;
}

/*会社概要y*/
.company-yurai-area:before{
    content: '';
    background-image: url('/images/company_bg1.png');
}

.price-table{
    width: 100%;
    margin: 20px 0 0 0;
}
.price-table caption{
    text-align: left;
    font-weight: 900;
}
.price-table tr{
    border: 1px solid #baad9d;
    border-bottom: none;
}
.price-table tr:last-of-type{
    border-bottom: 1px solid #baad9d;
}
.price-table th{
    width: 75%;
    background-color: #f3e3cc;
    background-color: #ccf7fe;
    text-align: left;
}
.price-table td{
    width: 25%;
    text-align: center;
    font-weight: 900;
}



/*CONSULTING*/
form{
    width: 100%;
}
.consulting-form{
    width: 100%;
    border: 1px solid #99c5d0;
    display: block;
}
.consulting-form tbody{
    width: 100%;
    display: block;
}
.consulting-form tbody tr{
    border-bottom: 1px solid #99c5d0;
    width: 100%;
}
.consulting-form tbody tr:last-of-type{
    border-bottom: none;
}
.consulting-form tbody tr th{
    padding: 10px;
    background-color: #f7f8f8;
    text-align: left;
    width: 25%;
    font-weight: 900;
}
.consulting-form tbody tr td{
    padding: 10px;
    width: 75%;
    text-align: left;
}
span.wpcf7-list-item{
    margin: 0 1em 0 0 !important;
}
.wpcf7-form-control-wrap{
    display: block;
}
div.wpcf7 input[type='file']{
    display: block;
    width: 100%;
}
.req{
    display: inline-block;
    padding: 4px 6px;
    color: #fff;
    background-color: #e60012;
    font-size: 80%;
    font-weight: 100;
    margin: 0 0 0 20px;
    text-shadow: none;
    line-height: 1;
}
.notice{
    font-size: 85%;
}

.form-privacy{
    padding: 20px 30px;
    background-color: #efefef;
    font-size: 85%;
    margin: 30px 0 0 0;
}
.form-privacy ul{
    padding-left: 25px;
}
.form-privacy ul > li{
    list-style: disc;
}
.form-privacy h4{
    font-weight: 900;
    margin: 1em 0 0 0;
    font-size: 120%;
}
.send-area{
    text-align: center;
}
.send-area input[type="submit"]{
    display: inline-block;
    color: #fff;
    background-color: #09ad7e;
    box-shadow: 0 4px 0 #0a8d67;
    font-size: 18px;
    border-radius: 10px;
    width: 350px;
    line-height: 60px;
    margin: 30px auto;
    max-width: 100%;
    font-weight: 900;
}

/*COMPANY*/
.company-info-table,
.c-table{
    width: 100%;
    border: 1px solid #ccc;
}
.company-info-table tbody,
.c-table tbody{
    width: 100%;
}
.company-info-table tr:not(:last-of-type),
.c-table tr:not(:last-of-type){
    border-bottom: 1px solid #ccc;
}
.company-info-table th,
.c-table th{
    width: 25%;
    border-right: 1px solid #ccc;
    background-color: #f0f0f0;
}
.company-info-table td,
.c-table td{
    width: 75%;
}


/*-------------------------
LP
-------------------------*/
.houjin-lp .lp-container{
    max-width: 700px;
}
.houjin-lp .h2-area h2,
.house-lp .h2-area h2{
    width: 100%;
    display: block;
}
.houjin-lp .h2-area .h2 img,
.house-lp .h2-area .h2 img{
    max-width: 100%;
}

table.comp{
    margin: 1.5em auto;
    border: 1px solid #b3a98c;
    max-width: 700px;
}
table.comp tr{
    display: table-row;
    flex-wrap: nowrap;
    border-bottom: 1px solid #b3a98c;
}
table.comp thead{
    border-bottom: 1px solid #b3a98c;
}
table.comp tr:last-of-type{
    border-bottom: none;
}
table.comp tr > *:not(:last-of-type){
    border-right: 1px solid #b3a98c;
}
table.comp tr th,
table.comp tr td{
    width: auto;
    display: table-cell;
    padding: 0;
}
table.comp thead tr th{
    color: #7e6948;
    font-weight: bold;
    font-size: 22px;
    vertical-align: middle;
}
table.comp thead tr th:nth-of-type(1),
table.comp thead tr th:nth-of-type(2){
    width: 50px;
}
table.comp thead tr th:last-of-type{
    width: 100%;
    background-color: #f7c32f;
}
table.comp tbody tr:nth-of-type(odd) th:nth-of-type(1),
table.comp tbody tr:nth-of-type(odd) th:nth-of-type(2),
table.comp tbody tr:nth-of-type(even) th:nth-of-type(1){
    vertical-align: middle;
}
table.comp tbody tr:nth-of-type(odd) th:nth-of-type(1) span,
table.comp tbody tr:nth-of-type(odd) th:nth-of-type(2) span,
table.comp tbody tr:nth-of-type(even) th:nth-of-type(1) span{
    writing-mode: vertical-lr;
    -webkit-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    text-orientation: upright;
    font-weight: bold;
    font-size: 24px;
    display: block;
    margin: auto;
    min-height: 200px;
}
table.comp tbody tr:nth-of-type(odd) th:nth-of-type(2),
table.comp tbody tr:nth-of-type(even) th:nth-of-type(1){
    color: #fff;
}
table.comp tbody tr:nth-of-type(odd) th:nth-of-type(1){
    color: #7e6948;
    padding: 10px 0;
}
table.comp tbody tr:nth-of-type(odd) th:nth-of-type(2){
    background-color: #b5b5b7;
}
table.comp tbody tr:nth-of-type(even) th:nth-of-type(1){
    background-color: #d11837;
}
table.comp tbody tr td{
    padding: 10px;
}
table.comp tbody tr td img{
    margin: auto;
}
.houjin-service-area .h3{
    margin: 0 auto;
}
.houjin-service{
    padding: 20px;
    position: relative;
    overflow: hidden;
}
.houjin-service .ba-area{
    padding: 30px 0;
}
.houjin-service .ba-area img:first-of-type{
    margin-bottom: 10px;
}
.houjin-service-area .h3{
    display: block;
}
.border{
    position: absolute;
    background-repeat: no-repeat;
}
.border-top{
    background-image: url('/images/houjin/lp-frame-top.jpg');
    top: 0;
    left: 0;
    width: 100%;
    height: 10px;
}
.border-bottom{
    background-image: url('/images/houjin/lp-frame-bottom.jpg');
    bottom: 0;
    left: 0;
    width: 100%;
    height: 10px;
}
.border-left{
    background-image: url('/images/houjin/lp-frame-left.jpg');
    background-repeat: repeat-y;
    left: 0;
    top: 0;
    height: 100%;
    width: 10px;
}
.border-right{
    background-image: url('/images/houjin/lp-frame-right.jpg');
    background-repeat: repeat-y;
    right: 0;
    top: 0;
    height: 100%;
    width: 10px;
}
.houjin-voice-area .bg-wood{
    background-image: url('/images/houjin/lp-30-bg.jpg');
    background-size: 100% 100%;
    background-position: top left;
    background-repeat: no-repeat;
    padding-bottom: 25px;
}
.houjin-voice{
    padding: 35px 0;
    position: relative;
    background-color: #fff;
    width: 94%;
    margin: 0 auto;
}
.houjin-voice .txt-content{
    overflow: hidden;
}
.houjin-voice .pin{
    position: absolute;
    width: 40px;
    height: 40px;
    background-image: url('/images/houjin/pin.png');
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;
}
.houjin-voice .txt-content p{
    font-size: 95%;
    margin-bottom: 1em;
}
.houjin-voice .pin.left{
    left: 0;
}
.houjin-voice .pin.top{
    top: 0;
}
.houjin-voice .pin.bottom{
    bottom: 0;
}
.houjin-voice .pin.right{
    right: 0;
}
.houjin-voice .list{
    margin-bottom: 30px;
}
.houjin-voice .list p:before{
    content: '●';
    margin-right: 4px;
}
.houjin-voice .alignleft{
    margin: 0 0 15px 0;
}


.lp-cta-area{
    margin: 10px auto;
}
.lp-cta-ttl{
    width: 90%;
    margin: 0 auto 35px auto;
}
.lp-btn-area{
    
}
.lp-btn-area > a{
    display: block;
    margin-bottom: 25px;
}
.harf-btn{
    width: 48%;
}
.harf-btn img{
    width: 100%;
}
.bg-cta-area{
    position: relative;
}
.bg-cta-area .lp-cta-area{
    position: absolute;
    bottom: 30px;
    left: 0;
    right: 0;
}
.lp-line-link img{
    width: 100%;
    max-width: none;
}

.lp-footer{
    background-color: #fff;
}
.lp .consulting-form{
    display: block;
    margin: 30px auto 0 auto;
}
#mastfoot.lp-footer{
    background-color: #0a375e;
    padding: 25px 0;
    width: 100%;
    margin-top: 150px;
}
#mastfoot.lp-footer ul{
    margin: 0 auto;
    justify-content: space-around;
}
#mastfoot.lp-footer ul > li > a{
    color: #fff;
    font-size: 85%;
}


/*-------------------------
HOUSE LP
-------------------------*/
.lp img,
.lp img.pc{
    display: block;
}
.lp img.sp{
    display: none;
}
[class*="houjin-"][class*="-area"]{
    padding-top: 30px;
    padding-bottom: 30px;
}
[class*="house-"][class*="-area"]{
    padding-top: 50px;
    padding-bottom: 50px;
}
[class*="houjin-"][class*="-area"] .txt,
[class*="house-"][class*="-area"] .txt{
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.txt-content{
    line-height: 1.8;
}
.txt-content p{
    margin-bottom: 1.5em;
}
.txt-content img,
.txt-content figure{
    margin-bottom: 1.5em;
}
.txt-content > *:last-child{
    margin-bottom: 0;
}
.txt-content ul,
.txt-content ol{
    padding-left: 25px;
    margin-bottom: 1.5em;
    font-weight: bold;
}
.txt-content ol > li{
    list-style: decimal;
}
.lp .h2-area{
    width: 100%;
    background-color: #0a375e;
    margin-bottom: 1.5em;
    display: block;
}
.lp .h2{
    width: 100%;
    text-align: center;
    display: block;
}
.lp .h2-area .h2{
    display: block;
    text-align: center;
}
.lp .h2-area .h2 span{
    display: block;
    color: #fff;
    font-family: '游明朝','Yu Mincho','Hiragino Mincho Pro',serif;
    font-size: 32px;
    font-weight: bold;
    padding: 30px 0;
    width: 96%;
    margin: 0 auto;
}
.lp .h2-area > span{
    display: block;
    text-align: center;
    color: #fff;
}
.lp .h3-area{
    margin: 0;
}

.house-top-area{
    padding-top: 0 !important;
}
.house-top-area img{
    margin: 0 auto;
}
.house-happyou-area{
    margin-top: 80px;
    padding-bottom: 0 !important;
}
.house-happyou-area .txt{
    border: 1px solid #555;
    padding: 80px 15px 30px 15px;
    position: relative;
}
.house-happyou-area .happyou{
    position: absolute;
    left: 0;
    right: 0;
    top: -100px;
    margin: auto;
}
.house-happyou-area ul{
    margin-bottom: 1.5em;
    padding-left: 0;
}
.house-happyou-area ul > li{
    padding: 5px 10px;
    border-bottom: 1px solid #ddd;
    font-weight: bold;
    font-size: 110%;
}
.house-happyou-area ul > li:before{
    content: '■';
    margin-right: 5px;
}
.house-about-area{
    padding-top: 0 !important;
}

.house-mind-area .lp-container{
    background-image: url('/images/house/mind-bg.png');
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
}
.house-mind-area ul{
    border: 10px solid #e7f7fc;
    padding: 30px 15px 40px 15px;
    margin: 30px auto;
    background-color: #fff;
}
.house-mind-area ul > li{
    padding: 5px 0 5px 25px;
    background-image: url('/images/house/mind-check.png');
    background-size: 18px auto;
    background-position: left 0 center;
    background-repeat: no-repeat;
    font-weight: bold;
    font-size: 110%;
}
.house-mind-area .mind-women-area{
    margin-top: -80px;
}
.mind-women-area .gijutsu{
    font-size: 40px;
}

.houjin-point{
    padding-top: 50px;
}
.house-point{
    padding-top: 80px;
}
.houjin-point .h3-area,
.house-point .h3-area{
    margin-bottom: 30px;
}
.house-point .h3 img:not(:last-of-type){
    margin-bottom: 15px;
}
.model-plan-area{
    
}
.model-table{
    margin-bottom: 30px;
}
.model-table th{
    width: 30% !important;
    font-weight: bold !important;
}
.model-table td{
    width: 70% !important;
    font-weight: normal !important;
}
.model-image-area{
    margin-top: 25px;
}
.model-image-area .price-table{
    margin-bottom: 25px;
}
.model-image-area h3{
    text-align: center;
    width: 100%;
}
.model-image-area h3 img{
    height: 80px;
    display: block;
    margin: 0 auto;
}
.model-image{
    width: 32%;
    height: 320px;
    overflow: hidden;
    margin: 0 2% 25px 0;
}
.model-image:nth-of-type(3n){
    margin-right: 0;
}
.model-image figcaption{
    font-weight: bold;
}
.model-image img{
    display: block;
    width: 100%;
    object-fit: cover;
    height: 100%;
}

.house-step{
    padding: 20px 0;
}
.house-step .h3-area{
    flex-wrap: nowrap;
    align-items: center;
    text-align: left;
    margin-bottom: 20px;
}
.house-step .h3-area .step{
    margin-right: 20px;
    width: 18%;
    max-width: 90px;
}
.house-step .h3-area .h3{
    color: #333;
    margin-right: 20px;
}
.house-step .h3-area span{
    font-size: 16px;
    display: block;
    width: 100%;
}
.house-step .h3-area .icon{
    max-height: 100px;
    max-width: 15%;
}

.house-quote-area,
.houjin-quote-area{
    padding-top: 0 !important;
}

/*-------------------------
SCHOOL LP
-------------------------*/
.school-lp-area .aligncenter{
    margin-bottom: 0 !important;
}
.school-btn-area{
    position: relative;
}
.school-btn-area a{
    width: 880px;
    max-width: 90%;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
}
.first-btn-area a{
    top: 50px;
}
.second-btn-area a{
    bottom: 150px;
}

/*-------------------------
SINGLE
-------------------------*/
.post-header{
    margin: 0 0 30px 0;
}
.post-title{
    font-size: 32px;
    font-weight: 900;
}
.dates-label{
    display: none;
}
.h1-bottom-area .cat-labels,
.relation-area article .postinfo .cat{
    font-size: 12px;
    top: 0;
    left: 0;
    color: #fff;
    background-color: #0a375e;
    padding: 2px 4px;
}
#eyecatch{
    margin: 30px 0 0 0;
}
.post-content .post-inner{
    
}
.post-content .post-inner h2,
.voices-post-loop-wrap .inner h2,
.relation-area .h3-area .h3{
    width: 100%;
    font-size: 22px;
    font-weight: 900;
    margin: 2em 0 1em 0;
    padding: 10px 0 10px 10px;
    background-color: #efefef;
    border-left: 5px solid #4c88c4;
}
.post-content .post-inner h3,
.voices-post-loop-wrap .inner h3{
    width: 100%;
    font-size: 20px;
    font-weight: 900;
    margin: 2em 0 1em 0;
}
.post-content .post-inner h4,
.voices-post-loop-wrap .inner h4{
    font-weight: bold;
}
.post-content .post-inner > p,
.voices-post-loop-wrap .inner > p{
    line-height: 2;
    margin: 0 0 2em 0;
}
.post-content .post-inner > a{
    color: #4c88c4;
}

/* Auther */
.auther-area{
    padding: 20px 30px;
    border: 4px solid #4c88c4;
}
.auther-area .h3-area{
    margin: 0 0 20px 0;
}
.auther-area .h3{
    font-weight: bold;
    font-size: 20px;
}
.auther-area .h3:before{
    font-family: 'Font Awesome 5 Pro';
    margin: 0 5px 0 0;
    content: '\f5ac';
    font-weight: 400;
}
.auther-area .img{
    width: 20%;
}
.auther-area .img img{
    width: 100%;
    display: block;
    margin: auto;
}
.auther-area .img .name{
    line-height: 1.4;
    display: block;
    margin-top: 5px;
    text-align: center;
    font-size: 14px;
}
.auther-area .inner{
    width: 75%;
}
.auther-area .inner p{
    margin-bottom: 20px;
}
.auther-area .inner p:last-of-type{
    margin-bottom: 0;
}

/* Prev Next */
#p-nav{
    margin: 30px 0;
    width: 100%;
}
#p-nav .prev,
#p-nav .next{
    width: 49%;
    margin: 0 0 10px 0;
}
#p-nav .prev{
    text-align: right;
}
#p-nav .prev-label,
#p-nav .next-label{
    font-size: 90%;
}
#p-nav .prev-label{
    text-align: right;
}
#p-nav a{
    color: #4c88c4;
}
#p-nav .prev-label span,
#p-nav .next-label span{
    color: #0a0a0a;
}

/* relation */
.relation-area > .flex{
    justify-content: flex-start;
}
.relation-area article{
    width: 32%;
    margin: 0 2% 20px 0;
}
.relation-area article:nth-of-type(3n){
    margin-right: 0;
}
.relation-area article .img{
    max-height: 200px;
    overflow: hidden;
    margin-bottom: 5px;
}
.relation-area article .ttl{
    font-size: 90%;
    font-weight: bold;
}
.relation-area article .postinfo .date{
    font-size: 14px;
    color: #777;
    
    display: none;
}

/*-------------------------
SIDEBAR
-------------------------*/
.side-section{
    margin: 0 0 30px 0;
}
.side-head-area{
    padding: 10px;
    background-color: #0a375e;
}
.side-head-area .side-head{
    font-weight: 900;
    color: #fff;
    font-size: 14px;
}
.side-section ul{
    padding: 10px 0 10px 5px;
    background-color: rgba(255,255,255,.7);
}
.side-section ul > li > a{
    display: inline-block;
    padding: 7px 0 7px 20px;
    position: relative;
    color: #333;
    font-size: 14px;
    transition: all .2s;
}
.side-section ul > li > a:before{
    position: absolute;
    font-family: 'Font Awesome 5 Pro';
    font-weight: 400;
    content: '\f105';
    top: 6px;
    left: 8px;
}
.side-section ul > li > a:hover{
    color: #4c88c4;
}
.side-section ul.children{
    padding: 0 0 0 25px;
}



/*-------------------------
CATEGORY
-------------------------*/
#main.category{
    
}
.post-loop-wrap article{
    width: 49%;
    margin: 0 2% 20px 0;
    position: relative;
    border: 1px solid #ccc;
}
.post-loop-wrap article:nth-of-type(even){
    margin-right: 0;
}
.panel-link{
    display: block;
    width: 100%;
}
.post-loop-wrap .eyecatch{
    width: 100%;
    height: 250px;
    overflow: hidden;
}
.post-loop-wrap .info{
    width: 100%;
    padding: 10px 10px 10px 10px;
}
.post-loop-wrap .post-header{
    width: 100%;
    display: inline-block;
    margin: 0;
}
.post-loop-wrap .post-header .post-title{
    font-weight: 900;
    font-size: 16px;
}
.post-loop-wrap .post-content{
    width: 100%;
    display: none;
}
.post-loop-wrap .postdate{
    font-size: 11px;
}
.post-loop-wrap .postdate:before{
    font-family: 'Font Awesome 5 Pro';
    font-weight: 400;
    content: '\f017';
    margin: 0 3px 0 0;
}
.post-loop-wrap .update{
    display: none;
}
.post-loop-wrap .update:before{
    font-family: 'Font Awesome 5 Pro';
    font-weight: 400;
    content: '\f1da';
    margin: 0 3px 0 0;
}

.voices-post-loop-wrap{
    width: 100%;
}
.voices-post-loop-wrap .post{
    width: 100%;
    margin: 0;
    padding: 30px 0;
    border-bottom: 1px solid #d1d1d1;
}
.voices-post-loop-wrap .post-header{
    margin: 0;
    width: 100%;
}
.voices-post-loop-wrap .post-title{
    font-size: 20px;
    color: #aa0450;
    margin: 0 0 15px 0;
}
.voices-post-loop-wrap .post-title:before{
    content: '●';
}
.voices-post-loop-wrap .post .inner > *:last-of-type{
    margin-bottom: 0;
}

/*ページネーション*/
#pagenation{
    width: 100%;
    margin: 30px 0 0 0;
}
#pagenation ul{
    justify-content: flex-start;
}
#pagenation ul > li > a,
#pagenation ul > li > span{
    display: inline-block;
    width: 20px;
    line-height: 20px;
    margin: 0 5px 5px 0;
}
#pagenation ul > li.prev > a,
#pagenation ul > li.next > a{
    width: 30px;
    font-size: 14px;
}


/*-------------------------
BREADCRUMB
-------------------------*/
#breadcrumb{
    width: 100%;
    font-size: 12px;
    padding: 20px 0;
    margin: 0 auto;
}
#breadcrumb > ol{
    justify-content: flex-start;
}
#breadcrumb > ol > li{
    margin: 0 5px 0 0;
    display: inline-block;
}
#breadcrumb > ol > li:not(:last-of-type):after{
    font-family: 'Font Awesome 5 Pro';
    margin: 0 0 0 5px;
    content: '\f105';
    font-weight: 400;
}
#breadcrumb > ol > li > a,
#breadcrumb > ol > li > span{
    display: inline;
}
#breadcrumb > ol > li span{
    line-height: 1.3;
}
#breadcrumb > ol > li:last-of-type{
    display: none;
}


/*-------------------------
FOOTER
-------------------------*/
.grecaptcha-badge{
    display: none;
}
#pagetop{
    width: 50px;
    height: 50px;
    position: fixed;
    bottom: 150px;
    right: 5%;
    background-color: #0a375e;
/*    background-color: #4c88c4;*/
    border: 1px solid #fff;
    border-radius: 50%;
    text-align: center;
}
#pagetop:before{
    position: absolute;
    font-family: 'Font Awesome 5 Pro';
    font-weight: 900;
    content: '\f062';
    margin: auto;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    font-size: 30px;
    color: #fff;
}
#pagetop:hover{
    opacity: .8;
}
#mastfoot{
    margin: 0 auto;
    width: 94%;
}
.foot-btn-area{
/*    padding: 60px 0;*/
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #d9eef4;
    padding: 10px 0;
    width: 100%;
    margin: 0;
    border-top: 2px solid #ccc;
}
.foot-btn-area .container{
    max-width: 1000px;
    justify-content: space-around;
}
.foot-btn-area .foot-btn{
    max-width: 350px;
    width: 40%;
}
.foot-btn-area a{
    width: 100%;
    display: inline-block;
    border-radius: 10px;
    height: 50px;
    text-align: center;
    color: #fff;
    font-size: 18px;
    font-weight: 900;
}
.foot-btn-area a span{
    font-size: 11px;
    display: block;
    width: 100%;
    font-weight: 100;
}
.foot-btn-area a br{
    display: none;
}
.foot-tel-link,
.foot-mail-link{
    padding-top: 8px;
    line-height: 1.3;
}
.foot-tel-link{
    background-color: #e84f6c;
    box-shadow: 0 4px 0 #c4324e;
}
.foot-line-link{
    background-color: #53B535;
    box-shadow: 0 4px 0 #489b2f;
    line-height: 50px;
}
.foot-mail-link{
    background-color: #4a4aaf;
    box-shadow: 0 4px 0 #36368d;
}

#copyright{
    background-color: #0a1d2c;
    color: #fff;
    font-size: 12px;
    text-align: center;
    padding: 12px 0;
}


@media screen and (max-width:1024px){
    html{
        zoom: 75%;
    }
    
    .content-bg:before{
        width: calc(94vw / 75 * 100);
    }
}


@media screen and (max-width:768px){
    /*-------------------------
    COMMON
    -------------------------*/
    html{
        zoom: 100%;
    }
	body{
		font-size: 14px;
        padding-bottom: 60px;
    }
    
    #content{
        padding: 10px 0 30px 0;
        width: 100%;
    }
    .page-sidebar #main{
        width: 94%;
        margin-left: auto;
        margin-right: auto;
    }
    #sidebar{
        width: 100%;
        margin-top: 50px;
    }
    
    .container{
        width: 96%;
    }
    .out-container{
        width: 100%;
    }
    .big-txt{
        font-size: 20px;
    }
    .big-txt br{
        display: none;
    }
    
    .sp{
        display: block;
    }
    .pc{
        display: none;
    }
    
    /*-------------------------
    HEADER
    -------------------------*/
    .header-inner{
        margin-top: 0;
        height: auto;
    }
    .head-bg{
        margin-top: 0;
    }
    .logo-area{
        width: 60%;
        max-width: 320px;
        margin: 5px auto 0 auto;
        min-width: 200px;
    }
    #site-title h1,
    #site-title p{
        font-size: 10px;
        padding-top: 2px;
    }
    .head-cta-area{
        display: none;
    }
    
    #sp-nav-btn{
        display: block;
        margin: auto;
        position: fixed;
        top: 25px;
        right: 3%;
        font-size: 10px;
        padding: 0;
        border-radius: 5px;
        text-align: center;
        color: #0a375e;
        height: 40px;
        width: 46px;
        transition: all .05s;
        background-color: #aaa;
    }
	
    /*メニュークローズ時（初期）*/
    #sp-nav-btn div{
        position: absolute;
        left: 0;
        right: 0;
        height: 2px;
        width: 64%;
        background-color: #fff;
        display: inline-block;
        margin: 0 auto;
        text-align: center;
        transition: all 0s;
    }
    #sp-nav-btn div:nth-of-type(1){
        top: 6px;
    }
    #sp-nav-btn div:nth-of-type(2){
        top: 14px;
    }
    #sp-nav-btn div:nth-of-type(3){
        top: 22px;
    }
    #sp-nav-btn span{
        display: block;
        width: 100%;
        text-align: center;
        font-size: 9px;
        color: #fff;
        position: absolute;
        bottom: 3px;
        line-height: 1;
        left: 0;
        right: 0;
        letter-spacing: -0.03em;
    }
    #sp-nav-btn span.close,
    body.nav-open #sp-nav-btn span.open{
        opacity: 0;
    }
    body.nav-open #sp-nav-btn span.close,
    #sp-nav-btn span.open{
        opacity: 1;
    }
    
    /*メニューオープン時（タップ後）*/
    body.nav-open #sp-nav-btn div{
        transition: all .2s;
    }
    body.nav-open #sp-nav-btn div:nth-of-type(2){
        opacity: 0;
        transform: rotateY(180deg);
    }
    body.nav-open #sp-nav-btn div:nth-of-type(1),
    body.nav-open #sp-nav-btn div:nth-of-type(3){
        top: 14px;
    }
    body.nav-open #sp-nav-btn div:nth-of-type(1){
        transform: rotate(150deg);
    }
    body.nav-open #sp-nav-btn div:nth-of-type(3){
        transform: rotate(-150deg);
    }
    body.nav-open .sp_over_ray{
        width: 100vw;
        height: 100vh;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 50;
        background-color: rgba(50,50,50,0.5);
    }
    
    #sp-gnav{
        width: 100%;
        position: fixed;
        padding-top: 70px;
        background-color: #fff;
        top: 0px;
        left: 0;
        z-index: 100;
        height: calc(100vh - 60px);
        overflow-y: scroll;
    }
    #sp-gnav ul{
        align-content: flex-start;
        border-top: 1px solid rgba(76, 136, 196, .7);
    }
    #sp-gnav ul > li{
        width: 100%;
        border-bottom: 1px solid rgba(76, 136, 196, .7);
    }
    #sp-gnav ul > li > a{
        display: block;
        padding: 10px 6%;
        font-size: 13px;
        position: relative;
    }
    #sp-gnav ul > li > a:before{
        font-family: 'Font Awesome 5 Pro';
        font-weight: 900;
        content: '\f0da';
        position: absolute;
        top: 10px;
        right: 4%;
        color: #204288;
        font-size: 120%;
    }
    #sp-gnav ul > li.current-menu-item > a{
        font-weight: bold;
        color: #204288;
    }
    #sp-gnav ul > li.current-menu-item > a:before{
        content: '\f330';
    }
    #sp-gnav > ul > li.menu-item-has-children > a{
        pointer-events: none;
    }
    #sp-gnav > ul > li.menu-item-has-children > a:before{
        content: '\f107';
    }
    #sp-gnav > ul > li.menu-item-has-children.drop-open > a:before{
        transform: rotateZ(180deg);
    }
    #sp-gnav > ul > li > ul{
        border-top: 1px solid rgba(255,255,255,0.7);
        background-color: rgba(76, 136, 196, .1);
    }
    #sp-gnav > ul > li > ul > li{
        border-bottom: 1px solid rgba(255,255,255,0.7);
    }
    #sp-gnav > ul > li > ul > li:last-of-type{
        border-bottom: none;
    }
    #sp-gnav > ul > li > ul > li > a{
        padding-left: 12%;
    }
    #sp-gnav > ul > li > ul > li > a:before{
        content: '└';
        left: 6%;
        right: auto;
    }
    
    #pc-gnav{
        display: none;
    }
    
    /*-------------------------
    INDEX
    -------------------------*/
    #main-banner{
        overflow: hidden;
    }
    #main-banner img.pc-banner{
        display: none;
    }
    #main-banner img.sp-banner{
        display: block;
    }
    #first-achieve-area{
        padding: 0;
    }
    #first-voice-area:before{
        bottom: 0;
        top: auto;
        height: 100%;
    }
    #first-achieve-area img{
        width: 88%;
    }
    #first-voice-area{
        padding: 10px 0;
    }
    .first-voice-img{
        width: 95%;
    }
    .first-voice{
        margin-bottom: 15px;
    }
    .first-voice p{
        font-size: 18px;
    }
    .first-customers{
        padding: 10px 0;
    }
    .loop{
        height: 120px;
        animation: bgloop 70s linear infinite;
    }
    #first-horizonal-area{
        height: 120px;
    }
    #first-horizonal-area img{
        max-width: none;
    }
    
    .top-announce-area .txt-content p,
    .top-announce-area .txt-content ul{
        font-size: 13px;
    }
    .top-case-area,
    .top-voice-area,
    .top-work-area{
        padding: 30px 0 0 0;
    }
    .top-case-area .h2-area,
    .top-voice-area .h2-area,
    .top-work-area .h2-area{
        padding: 30px 0;
    }
    .top-case-area .h2,
    .top-voice-area .h2,
    .top-work-area .h2{
        font-size: 22px;
    }
    section[class*="top-"]{
        font-size: 16px;
    }
    .top-problem{
        padding: 30px 0 0 0;
    }
    .top-problem .head{
        font-size: 18px;
    }
    .top-problem .head br{
        display: none;
    }
    .top-problem ul{
        margin: 25px 0;
    }
    .top-problem ul > li{
        font-size: 16px;
    }
    
    .top-case{
        padding: 7px 10px 10px 10px;
        margin-bottom: 15px;
    }
    .top-case .arrow i{
        font-size: 32px;
    }
    .top-case .h3{
        font-size: 16px;
    }
    .top-ba img{
        width: 47%;
    }
    .top-case .arrow:after{
        font-size: 40px;
    }
    .top-voice-area{
        padding: 30px 0;
    }
    .top-voice-img{
        margin-bottom: 15px;
    }
    .top-voice{
        margin-bottom: 15px;
        padding: 10px;
    }
    .top-voice p{
        font-size: 16px;
        margin: 0 0 10px 0;
    }
    .top-emotion-area{
        font-size: 18px;
        padding-top: 0;
    }
    .top-voice p.name{
        font-size: 14px;
    }
    .top-emotion-area > .flex{
        flex-direction: column-reverse;
    }
    .top-emotion{
        padding: 0;
        width: 100%;
    }
    .top-emotion-area > .flex > img{
        width: 90%;
        margin: 0 auto 25px auto;
    }
    .top-credo-area{
        padding: 0;
    }
    .top-case-area .h2,
    .top-voice-area .h2,
    .top-emotion-area .h2,
    .top-work-area .h2,
    .top-credo-area .h2,
    .top-commit-area .h2{
        font-size: 20px;
    }
    
    .top-credo-area .h2-area{
        margin-bottom: 30px;
    }
    .top-credo{
        font-size: 16px;
        margin-bottom: 30px;
    }
    
    .top-work-area{
        padding-bottom: 30px;
    }
    .top-work-area .inner .flex{
        flex-direction: column-reverse;
    }
    .top-work-img{
        width: 100%;
    }
    .top-work-txt{
        width: 100%;
    }
    .top-work-area ul{
        padding: 10px;
        margin-bottom: 25px;
    }
    .top-work-area ul > li{
        font-size: 100%;
    }
    
    .top-commit-area .h2-area{
        margin-bottom: 30px;
    }
    .top-commit-area{
        padding: 0;
    }
    .top-commit-area .h3{
        font-size: 18px;
    }
    .top-commit{
        font-size: 14px;
        margin-bottom: 30px;
    }
    
    .frame-1-top,
    .frame-2-top{
        padding: 30px 0;
    }
    
    .more-area a{
        line-height: 50px;
        font-size: 14px;
    }
    
    /*-------------------------
    PAGE
    -------------------------*/
    .page-header,
    .cat-header{
        padding: 40px 0;
        background-position: center left;
        background-size: auto 100%;
    }
    .content-bg:before{
        width: calc(94vw);
        background-size: auto 100%;
        background-position: center top;
        height: 600px;
    }
    .page-header .page-title,
    .cat-header .page-title{
        font-size: 26px;
    }
    .story .page-header{
        background-position: 40% center;
    }
    .profile .page-header{
        background-position: 25% center;
    }
    .credo .page-header{
        background-position: 54% center;
    }
    .before-after .cat-header{
        background-position: 23% center;
    }
    .voices .cat-header, .cat-header{
        background-position: 55% center;
    }
    .qa .page-header{
        background-position: 67% center;
    }
    .consulting .page-header,
    .consulting-thanks .page-header,
    .contact .page-header,
    .contact-thanks .page-header{
        background-position: 30% center;
    }
    .free-quote .page-header,
    .free-quote-thanks .page-header{
        background-position: 45% center;
    }

    .page-inner{
        font-size: 16px;
    }
    .page-inner .h3{
        font-size: 24px;
    }
    
    .page-inner .h4,
    .page-inner .h4{
        font-size: 18px;
    }
    
    .lp-inner .h2 > br,
    .lp-inner .h3 > br,
    .lp-inner .h4 > br,
    .lp-inner .h5 > br,
    .lp-inner .h6 > br{
        display: none;
    }
    .page-inner .h2 > br,
    .page-inner .h3 > br,
    .page-inner .h4 > br,
    .page-inner .h5 > br,
    .page-inner .h6 > br{
        display: none;
    }
    .page-inner img{
        max-width: 100%;
    }
    .page-inner ul,
    .page-inner ol{
        padding: 0 0 0 25px;
    }
    
    .content-head span{
        left: 10px;
        font-size: 13px;
    }
    
    table th,
    table td{
        padding: 5px;
    }
    .consulting-form tbody tr th,
    .consulting-form tbody tr td{
        width: 100%;
    }
    
    div.wpcf7 .ajax-loader{
        display: none !important;
    }
    .form-privacy{
        padding: 10px;
        text-align: left;
    }
    .form-privacy ul{
        padding-left: 15px;
    }
    .send-area input[type="submit"]{
        font-size: 16px;
        line-height: 50px;
    }
    
    .the-qa h3,
    .the-qa h4{
        font-size: 18px;
    }
    
    .price-table th,
    .price-table td{
        width: 100%;
        font-size: 16px;
    }
    
    .emotion-sekinin-area:before,
    .story-mirai-area:before{
        bottom: 600px;
    }
    
    .top-commit-area:before,
    .top-voice-area:before,
    .top-work-area:before{
        height: 1500px;
    }
    
    /*-------------------------
    LP
    -------------------------*/
    .lp .out-container,
    .lp #content{
        width: 100%;
    }
    .lp .head-bg{
        margin-top: -10px;
    }
    
    .lp .h2-area .h2 span{
        font-size: 24px;
    }
    .lp-inner .h3{
        font-size: 20px;
    }
    
    .houjin-voice-area .lp-container{
        width: 100%;
    }
    .houjin-voice{
        padding: 30px 10px;
    }
    .houjin-voice .pin{
        width: 30px;
        height: 30px;
    }
    .houjin-voice-area .lp-container > .txt{
        width: 94% !important;
        margin-left: auto;
        margin-right: auto;
    }
    .houjin-service .ba-area{
        padding: 20px 0;
    }
    .houjin-form-area .h3 br{
        display: inline;
    }
    
    .lp-cta-area{
        width: 96%;
        margin: 0 auto;
    }
    .lp-btn-area img{
        max-width: none;
        margin-bottom: 0 !important;
    }
    .lp-cta-ttl{
        margin-bottom: 15px;
    }
    .lp-btn-area > a{
        margin-bottom: 15px;
    }
    .harf-btn{
        margin-bottom: 10px;
    }
    .harf-btn img{
        
    }
    
    #mastfoot.lp-footer ul{
        width: 96%;
    }
    
    /*-------------------------
    SP HOUSE LP
    -------------------------*/
    body.lp{
        font-size: 16px;
    }
    .lp img.pc{
        display: none;
    }
    .lp img.sp{
        display: block;
    }
    [class*="houjin-"][class*="-area"],
    [class*="house-"][class*="-area"]{
        padding-top: 20px;
        padding-bottom: 20px;
    }
    [class*="houjin-"][class*="-area"] .txt,
    [class*="house-"][class*="-area"] .txt{
        width: 100%;
    }
    
    .house-happyou-area{
        margin-top: 15px;
    }
    .house-happyou-area .happyou{
        top: -30px;
    }
    .house-mind-area .lp-container{
        width: 100%;
    }
    .house-mind-area ul,
    .mind-women-area p{
        width: 94%;
        margin-left: auto;
        margin-right: auto;
        display: block;
    }
    .house-mind-area ul{
        padding: 15px 10px;
    }
    .mind-women-area .gijutsu{
        font-size: 8vw;
    }
    table.comp thead tr th:nth-of-type(1), table.comp thead tr th:nth-of-type(2){
        width: 45px;
    }
    table.comp thead tr th{
        font-size: 18px;
    }
    table.comp tbody tr:nth-of-type(odd) th:nth-of-type(1) span, table.comp tbody tr:nth-of-type(odd) th:nth-of-type(2) span, table.comp tbody tr:nth-of-type(even) th:nth-of-type(1) span{
        font-size: 20px;
    }
    
    .houjin-point .h3-area,
    .house-point .h3-area{
        margin-bottom: 0;
    }
    .houjin-point,
    .house-point{
        padding-top: 30px;
    }
    .house-point .h3-area img:first-of-type{
        width: 50%;
    }
    
    .model-image,
    .model-image:nth-of-type(3n){
        width: 100%;
        margin-right: 0;
    }
    .model-image:nth-of-type(even){
        margin-right: 0;
    }
    
    .house-step .h3-area{
        margin-bottom: 10px;
    }
    .house-step .h3-area .step{
        margin-right: 10px;
    }
    .house-step .h3-area .h3{
        font-size: 18px;
        margin-right: 10px;
    }
    .house-step .h3-area span{
        font-size: 14px;
    }
    .house-step .h3-area .icon{
        max-height: 50px;
    }
    .step-arrow{
        width: 20%;
    }
    
    /*-------------------------
    SCHOOL LP
    -------------------------*/
    .first-btn-area a{
        top: 5.1vw;
    }
    .second-btn-area a{
        bottom: 12vw;
    }
    
    
    
    /*-------------------------
    SINGLE
    -------------------------*/
    .post-title{
        font-size: 22px;
    }
    
    .auther-area{
        padding: 15px 10px;
    }
    .auther-area .img{
        width: 100%;
    }
    .auther-area .img img{
        width: 60%;
    }
    .auther-area .inner{
        width: 100%;
        margin-top: 25px;
    }
    
    .prev-label span,
    .next-label span{
        font-size: 11px;
    }
    .prev-title,
    .next-title{
        font-size: 13px;
    }
    .prev,
    .next{
        width: 100%;
    }
    
    .relation-area article{
        width: 49%;
        margin: 0 2% 15px 0;
    }
    .relation-area article:nth-of-type(3n),
    .relation-area article:nth-of-type(even){
        margin-right: 0;
    }
    .relation-area article:nth-of-type(odd){
        margin-right: 2%;
    }
    
    .relation-area article .img{
        max-height: 130px;
    }
    
    
    
    /*-------------------------
    SIDEBAR
    -------------------------*/
    
    
    /*-------------------------
    CATEGORY
    -------------------------*/
    .post-loop-wrap article{
        width: 100%;
        margin-right: 0;
    }
    .post-loop-wrap .eyecatch{
        height: 180px;
    }
    .post-loop-wrap .post-header .post-title{
        font-size: 16px;
    }
    
    .voices-post-loop-wrap .post{
        padding: 15px 0;
    }
    .voices-post-loop-wrap .post-title{
        font-size: 18px;
    }
    
    /*-------------------------
    BREADCRUMB
    -------------------------*/
    #breadcrumb{
        padding: 10px 0;
    }
    #breadcrumb > ol > li:last-of-type{
        display: none;
    }
    
    
    /*-------------------------
    FOTTER
    -------------------------*/
    #pagetop{
        bottom: 30px;
        right: 3%;
        display: none !important;
    }
    #mastfoot{
        width: 100%;
    }
    .foot-btn-area{
        display: block;
        padding: 5px 0;
        max-height: 60px;
        z-index: 100;
    }
    .foot-btn-area > .flex{
        flex-wrap: nowrap;
    }
    .foot-btn-area .foot-btn{
        width: 40%;
        border-right: 1px solid #fff;
        text-align: center;
    }
    .foot-btn-area .foot-btn:nth-of-type(2){
        border-right: none;
    }
    .foot-btn-area .foot-btn:last-of-type{
        border-right: none;
        width: 0;
    }
    .foot-btn-area a{
        width: 80%;
        margin: 0 auto;
        font-size: 13px;
        box-shadow: none;
        background-color: transparent;
    }
    .foot-btn-area a span{
        font-size: 11px;
    }
    .foot-btn-area a br{
        display: inline;
    }
    .foot-btn-area > .flex > a:last-of-type{
        margin-bottom: 0;
    }
    .foot-tel-link,
    .foot-mail-link{
        padding-top: 5px;
    }
    .foot-btn-area .foot-tel-link span,
    .foot-btn-area .foot-mail-link span{
        display: none;
    }
    .foot-btn-area a:before{
        font-family: 'Font Awesome 5 Pro';
        font-weight: 900;
        margin: auto 4px auto auto;
    }
    .foot-btn-area .foot-tel-link{
        color: #c4324e;
    }
    .foot-btn-area .foot-tel-link:before{
        content: '\f879';
    }
    .foot-btn-area .foot-mail-link{
        color: #36368d;
    }
    .foot-btn-area .foot-mail-link:before{
        content: '\f0e0';
    }
    
    #copyright{
        font-size: 11px;
        padding: 8px;
    }
    
    
    
}

