@charset "UTF-8";
/*
Theme Name: sunwall-sp
Author: eSales System Laboratory Inc.
Author URI: http://www.e-uru.biz/
Version: 1.0.0
*/

/****************************************
General Setting
*****************************************/
html {
}

html, body {
	margin: 0 auto!important;
}
header,
body {
	min-width: 100%;
}
body {
	letter-spacing: 0px;
	font-size: 15px;
	-webkit-text-size-adjust: 100%;
}
img {
	max-width: 100%;
	height: auto;
}

.wrapper { width: 96%; }
.wrapper02 { margin-left: 1%; margin-right: 1%; }
.sponly { display: block; }
.pconly { display: none; }

.spbr { display: block; }
.pcbr { display: inline; }
.spimgblock { display: block; margin-left: auto; margin-right: auto; margin-bottom: 10px; float: none!important; }

#sp_menu_btn {
	position: fixed;
	display: block;
	cursor: pointer;
	width:65px;
	height:65px;
	right:0px;
	top:7px;
	margin-right:10px;
	background: #fff;
	border-radius: 6px;
	z-index: 1002;
	border: 1px solid #eee;
}
header { position: inherit !important; height: auto; }
#headerL img.logo { width: 200px; padding-top: 0px; padding-bottom: 0px; margin-left: 10px; float: none; }
#header h1 { float: none; line-height: 1.5em; font-size: 11px; margin-right: 70px; margin-left: 5px; margin-top: 10px; }
.spmenu { text-align: right; }
.htoi { display: none; float: none; }

img.ftel { width: 170px; margin-top: 10px; }

.fcompay img { width: 250px; }
.fcompay .font20 { font-size: 18px; }

#header {
	position: relative;
	top: 0px;
	display: block;
	margin-left: auto;
	margin-right: auto;
	z-index: 100;
	width: 100%;
	background: #fff;
	min-height: 65px;
}

.menu_bg {
	background: #fff;
	height: 100%;
}
.menu .child:before { display: none; }
#gnavi {
	position: fixed;
	top: 65px;
	z-index: 999;
	width: 100%;
	float: none;
	display: block;
}

#gnavi.menu_open {
	height: 100%;
	background: #fff;
	overflow-y: scroll;
	padding-bottom: 50px;
}

.menu {
    margin-top:55px;
    margin-left: auto;
    margin:0;
    padding: 0;
    width:100%;
    height: auto;
    float: none;
    display:  none;
}

.menu ul{
	list-style-type: none;
	margin: 0px 0px 90px 0px;
	padding: 0 2px;
	display: block;
}

.menu li {
	display: block;
	width: 100%;
	text-indent: initial;
	height: auto;
}
.menu li.sponly { display: blcok; }
.menu li.has_child:hover .child { display: none; }
.menu span.spanmenu:after { background: none; }
.menu span.spanmenu,
.menu a{
	font-size: 16px;
	display: block;
	padding: 15px 0px 15px 20px;
	margin: 0 0 0px 0;
	text-align: left;
	width:auto;
	height: auto;
	border-radius: 2px;
	text-decoration: none;
	position: relative;
	border-bottom: 2px solid #fff;
	background: #004377;
	color: #fff!important;
}

.menu span.spanmenu:after,
.menu a:after {
	content: ">";
	position: absolute;
	right: 10px;
	top: 30%;
}

.menu span.spanmenu:before, .menu a:before { height: 0px; }

.menu a span { display: inline;}

.menu .child {
	top: 0px;
	width: auto;
	position: relative;
	border: 0px;
	padding: 0px;
	margin: 0px;
}
.menu li.pconly { display: none; }
.menu .child li { padding: 0px 0px; margin: 0px 0px; border-bottom: 0px; display: block; width: auto; }
.menu .child li:last-child {
	border-bottom: 0px #ddd solid;
}
.menu .child a {
	background: #E6F6FE;
}
.menu .child a:before {
	content: "・";
	position: static;
	bottom: 0;
	left: 0;
	width: auto;
	height: auto;
	background: none;
	-webkit-transition: .3s ease-out;
	transition: .3s ease-out;
	-webkit-transform: translate(0,4px);
	transform: translate(0,4px);
}

.menu li:last-child a {
	/*  border-bottom: 1px solid #fff; */
}

.contactform th,
.contactform td { display: block; width: auto; padding: 10px 0px 10px 10px; }
.wpcf7-form textarea { width: 95%; }
.contactform .spw { width: auto; padding-right: 0px !important; }
.contactform div { margin-left: 0px !important; }
span.wpcf7-list-item { margin-left: 0px !important; }
.wpcf7-form input[type=text],
.wpcf7-form input[type=email],
.wpcf7-form input[type=tel]
{width: 100%; box-sizing: border-box;} /*名前、メール、題名*/

.newtopic ul {
	padding: 20px 10px;
	font-size: 15px;
}
.newtopic h3 { display: block; font-size: 14px; }
footer .fbox01 {
	float: none;
	width: auto;
	margin-bottom: 20px;
}
footer .fbox02 {
	float: none;
	width: auto;
}

#footer01 {
	padding: 0px 0 0px;
	position: fixed;
	bottom: 0px;
	width: 100%;
	z-index: 99;
	display: block;
}

#footer_fixed_sp li a i{
	font-size: 24px;
	color: #fff;
}

#footer_fixed_sp {
	margin: 0;
	float: none;
	display: table;
	width: 100%;
	border-top: 1px solid #fff;
}
#footer_fixed_sp li {
	display: table-cell!important;
	width:27%;
	color:#fff;
	background-color:#ddd;
}

#footer_fixed_sp li#ft_sptoi { background-color:#003477; }
#footer_fixed_sp li#ft_sptel { background-color:#0091b9; }
#footer_fixed_sp li#ft_spline img { width: 40px; }
#footer_fixed_sp li#ft_sptop { width: 19%; }
#footer_fixed_sp li#ft_spline a { padding: 0px; }
#footer_fixed_sp li#ft_spyoutube a { padding: 0px;
	display: flex;
	height: 100%; }
#footer_fixed_sp li#ft_spinsta a { padding: 0px;
	display: flex;
	height: 100%; }
#footer_fixed_sp li#ft_spfb a { padding: 0px;
	display: flex;
	height: 100%; }
#footer_fixed_sp li#ft_spyoutube { background-color:#ddd; }
#footer_fixed_sp li#ft_spinsta { background-color:#aaa; }
#footer_fixed_sp li#ft_spfb { background-color:#f5f1f5; }


#footer_fixed_sp li a:after {
	content:"";
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	display:block;
	width:1px;
	background:#ffffff;
}
#footer01 ul li img { margin: auto; }

#footer_fixed_sp li a {
	display:block;
	padding:8px 0 2px;
	font-size: 0.9em;
	color:#fff;
	text-align:center;
	text-decoration:none;
	background-position:center 8px;
	background-position:center 17px;
	background-repeat:no-repeat;
	width: auto;
	margin-top: 0px;
}
#gotop { display: none; }

.subHeader {
	padding-top: 20px;
	padding-bottom: 30px;
	background: url(/home/images/title-bg.png) no-repeat top center;
	background-size: cover;
}

#maincon { padding-top: 0px; }
#pcnavi .fbox02 { padding-top: 10px; padding-bottom: 50px; }
#pcnavi .fbox02 ul { display: block; }
.mB {
	font-size: 20px;
	margin: 0px;
	padding: 25px 0px 0px;
	text-align: center;
	letter-spacing: 0px;
	line-height: 1.5em;
	font-weight: 600;
	color: #0056a6;
	font-weight: 500;
	text-shadow: 1.5px 1.5px 2px #fff;
}

.midashi_1 {
	font-size: 26px;
	padding: 5px 15px;
	font-weight: 500;
	margin-bottom: 20px;
	line-height: 2em;
	font-weight: 300;
	display: inline-block;
	margin: 10px 0px 10px;
	color: #0091B9;
	letter-spacing: .1em;
}

ul.work_list li {
	display: inline-block;
	width: 80%;
	margin-bottom: 30px;
	margin: 0 auto 25px;
	position: relative;
	min-height: auto;
	box-sizing: content-box;
	padding: 0px 1% 0px 1%;
	background-color: #fff;
	border: 0px;
	border-bottom: 2px solid #ddd;
}
ul.work_list li span.img { display: block; }
ul.work_list li span.img .tags { margin-bottom: 1px!important; }

.kizittlsekou {
	font-size: 18px;
	padding: 5px 1px;
	font-weight: 500;
	margin-bottom: 20px;
	line-height: 1.3em;
	font-weight: 300;
	display: inline-block;
	margin: 0px 0px 0px;
	color: #0091B9;
	letter-spacing: .1em;
	text-align: center;
	letter-spacing: 0px;
}


.right_exit {
	margin: 10px 5px;
}

.right_exit .link {
	padding-left: 0px;
}

.kanren ul.list02 li,
.kanren ul.list li { width: 98%; margin: 10px auto; float: none; height: auto; }
.kanren ul.list li:after {
	clear: both;
	content: "";
	display: block;
}
.kanren .list li h3 { font-size: 14px; font-weight: 300; }
.kanren .list li img { width: 80px; height: 80px; }
.child_page { width: 48%; margin: 0px 1% 10px; }
.child_page h3 { font-size: 14px; }

.bukendata dl {
	display: flex;
	width: 100%;
}

.bukendata dl:after {
	clear: both;
	content: "";
	display: block;
}
.bukendata dl dd:before {
	content: "";
}
.bukendata dl dd { width: 65%; }
.bukendata dl dt { width: 32%; }
.bx-wrapper .bx-controls-direction a {
	width: 25px !important;
	height: 25px !important;
}

ul.inlink li { width: auto; margin: 5px 3px; }
ul.inlink li a { font-size: 14px; padding: 8px 5px; }
.worktags li { min-width: auto; width: 47%; }
.worktags li a {
	padding: 5px 5px;
	margin: 10px 5px 10px 0px;
	border-width: 2px !important;
	font-size: 15px;
}
#conwrap {
    background: #f6f6f6;
    margin-bottom: 50px;
}
#conwrap .item01 { display: block; width: 100%; font-size: 15px; line-height: 1.8em; box-sizing: border-box; padding: 20px 0px 20px 0px; vertical-align: top; text-align: left; }
#conwrap .item02 { display: block; width: 100%; }
#conwrap .item01 p {
    padding: 10px 20px;
    font-size: 15px;
    line-height: 1.8em;
}
#top-company li  { width: 47%; margin: 0px 1% 20px!important; }
#top-blog img {
        width: 150px;
        display: block;
        margin: auto;
        float: left;
        margin-right: 10px;	
}
#top-blog ul li:after {
	clear: both;
}
#top-work ul li span.img { height: auto; }
#top-work ul li {
    width: 47%;
    background: #fff;
    box-shadow: 2px 3px 5px #ccc;
    margin: 0px 1.5% 20px !important;
    box-sizing: border-box;
}
#top-work {
	background: url(/newhp/images/bg-copy-p.png) no-repeat top left;
	padding: 50px 0px 0px;
	background-size: contain;
	background-position-x: 22px;
	margin-bottom: 50px;
	background-size: 300px;
}
.tags { font-size: 13px; }
#top-news .item01 {
    display: block;
    width: 100%;
    vertical-align: top;
    padding-top: 0px;
}
#top-news .item02 {
    display: block;
    width: 100%;
    vertical-align: top;
}
#top-blog ul {
    display: block;
    flex-wrap: wrap;
    margin: 0px 0px;
}
#top-blog ul li { width: 100%; margin-right: 0px!important; margin-bottom: 20px; }
#top-blog ul li
#top-work ul li img { margin-bottom: 0px;}
#top-reformmenu ul {
	flex-wrap: wrap;
	width: 100%;
	justify-content: space-between;
	margin: 0px auto 0px auto;
}
#top-reformmenu ul li {
	width: 32%;
}
#top-reformmenu li a { padding: 0.5em; }
#top-reformmenu ul li h2 {
	margin: 0px 0px 10px;
	font-size: 15px;
	color: #fff;
	font-weight: bold;
	display: flex;
	height: 4em;
	align-items: center;
	justify-content: center;
	line-height: 1.2em;
}
.topttl .subttl01 { font-size: 16px!important; }
.topttl .subttl02 { font-size: 20px!important; }
#top-concept .topttl .topttl_wrap {
    background: url(/images/Re-title.png) no-repeat left top;
    background-size: 86px;
    padding: 25px 20px 10px 30px;
}
#conwrap .item01 h2 {
    padding: 10px 20px;
    font-size: 19px;
}

#header .item01 { width: 65%; padding-top: 14px; display: block; }
#header .item02 { width: 100%; display: block;}
#header #hwrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: right;
    justify-content: space-between;
}
.menu-nav { width: 70px; height: 70px; }
#foot01 .fbox01 { padding: 0px 10px; }
#foot01 .faddr { flex-wrap: wrap; }
#foot01 .faddr img { width: 150px; }

footer .fbox02 ul { font-size: 14px; }
footer .fbox02 ul li { display: block; width: 90%; margin: 0px auto; }
footer .fbox02 ul li .footsns { text-align: center; }
#pcnavi .fbox02 ul li  { }
#top-column ul li img {width: 100%; height: 200px;object-fit: cover;display: block;margin-bottom: 10px;}
#top-column ul li h3 { margin: 0px 10px; font-weight: 500; font-size: 14px; }
#top-column ul li .box1-1 {
	display: block;
	width: 100%;
	height: 200px;
	overflow: hidden;
	-webkit-transform: scale(1);
	transform: scale(1);
	text-align: center;	
}
.bx-wrapper .bx-next { right: -35px!important; }
.bx-wrapper .bx-prev { left: -30px!important; }
.midaship { font-size: 18px; }

.wpcf7-form input[type=button],
.wpcf7-form input[type=submit]{
	font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background:#537610;
	transition:all 0.3s;
	margin: 0px auto 0px;
	color:#fff;
	font-size: 20px;
	padding: 10px 20px;
	display: inline-block;
	cursor: pointer;
	border-radius: 10px;
	border-radius: 60px;
	border: 0px;
	width: 40%;
}
.wpcf7-spinner { display: none!important; }
#submitBtntt { width: auto; }

.midashi-d { font-size: 16px;}
.bukendata { font-size: 12px; }
.midashi_1 { font-size: 20px;}
.font20{ font-size: 17px;}
.midashi { font-size: 20px;}

ul.column_list li { display: block; width: 100%; margin: 0px auto 30px!important; }
ul.column_list li:after { clear: both; display: block; content: ""; }
ul.column_list li span.img { width: 40%; float: left; margin-right: 5%; height: auto; }
.colummcat span { font-size: 12px; }
ul.column_list li .colummcat { margin-bottom: 10px!important; line-height: 1.2em; }
ul.column_list li span.img img { width: 100%; height: 130px; object-fit: cover; }
.kizittlcolumn { font-size: 20px; line-height: 1.5em; }
.column_wrap { margin: 0px; }
.midashis { font-size: 16px;}
.bloglist-thumbnail { width: 30%; }
.kizittl.blogttl { font-size: 16px;}

.top-rmenu-bg {
    background: url(/images/bg-menu.jpg) no-repeat top center;
    padding: 50px 0px;
    background-size: 500px;
}
#top-concept-bg {
    background: url(/images/bg-work.png) no-repeat right bottom;
    padding: 0px 0px 50px;
    background-size: 1200px;
}
.inlist {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    margin-bottom: 80px;
}
.inlist li a {
    display: block;
    background-color: #004380;
    color: white;
    padding: 5px 5px;
    text-align: center;
    font-size: 12px;
    font-weight: 500;
    text-decoration: none;
    transition: background-color 0.3s ease;
}
.inlist li a::after {
    content: '▼';
    display: block;
    margin-top: 0px;
    font-size: 12px;
    color: white;
}
@media screen and (max-width: 330px) {
	.bx-wrapper .bx-next { right: 5px!important; }
	.bx-wrapper .bx-prev { left: 0px!important; }
}