@charset "UTF-8";
/*---------------------------------------------------------
Theme Name: hsc_ultimate
Version: 20190705
---------------------------------------------------------*/
/*初期化*/
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -o-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
* { margin: 0px; padding: 0px; line-height:1.2; word-wrap: break-word; }
ul { list-style: none; }
ol  { display: block; text-align:left; list-style-type: disc; margin-block-start: 1em; margin-block-end: 1em; margin-inline-start: 0px; margin-inline-end: 0px; padding-inline-start:1.5em; }
a {text-decoration:underline; font-size:100%; overflow:hidden; outline:none; }
img, a img { border: none; text-decoration:none; max-width:100%; }
.clearBoth { clear:both; font-size:1px; height:0; text-align:center; }
iframe { vertical-align: bottom;}
strong { font-weight:bold;}
main { position:relative; }
img { vertical-align: middle;}

.grecaptcha-badge { visibility: hidden; }

/*---------------------------------------------------------
common
---------------------------------------------------------*/
html {    font-size: 62.5%; }
/* Text elements */
body { font-size:1.6em; text-align: center; font-family:  Georgia, "Times New Roman", Times, serif; -webkit-text-size-adjust : 100%; }
body { color:#333; }
footer {background-color:#56413B; }
h1,h2,h3,h4,h5,h6 { font-size:100%;}
a { color: #666; text-decoration: none; }
a:hover { text-decoration:underline;}
a:hover { opacity: 0.6; filter: alpha(opacity=60); -ms-filter: "alpha( opacity=60 )"; }

/*pの設定*/
p {text-align:left; line-height:1.4;}
p+p { margin-top:19px;  line-height:1.7; }/*pが連続していたら、マージン*/
.fa { margin-right:5px; font-size:130%;}/*アイコンフォントの右側のつまりすぎとちょっと小さいのを解消*/


/*---------------------------------------------------------
common
---------------------------------------------------------*/
body { color:#333; }
/*パソコン・スマホ両方共通の設定*/
#wrapper { position:relative;}

/*ヘッダー設定*/
header.coom { background:rgba(0,0,0,0.0); position:absolute; top:0; left:0;}

/*スマホナビメニューの色*/
.navimenu_icon { color:#CCC; padding-right:10px;}
ul#menu-glnv>li a { font-size: 1.4rem; font-weight: bold; color:#333; text-decoration:none; opacity:0.8; }/*ナビゲーションの文字*/
/*キービジュアル設定*/


/*キービジュアル第二階層設定*/
body:not(.home)  #keyvisual_wrap { background-image:url(https://just-house.info/images/bg/keyvisual_wrap.jpg);  background-repeat:no-repeat; background-size: cover; background-position:center;}
main { background-color:#FFF;}

nav { background-color:none; }/*ナビゲーションの背景色*/


.maincolor { color:#30B116 !important;}
.bg_maincolor { background-color:#D71044;}
.bg_green { font-weight:bold;  text-decoration: underline; 
  text-decoration-thickness: 0.5em; 
  text-decoration-color: #D6E24B; 
  text-underline-offset: -0.2em; 
  text-decoration-skip-ink: none; 
}
  
#catch2 { border-top:#D2B852 5px solid; background-color:#F7F5EA}



#page-top { background-color:#51B4D4; color:#FFF; opacity:0.6;}
@media screen and (min-width: 320px) and (max-width: 768px) {
nav, .menu__line { background-color:#FFF;}/*背景*/
/*スマホメニューバー*/
.hun_menu  { background:#51B4D4;}
 ul#menu-glnv>li a { color:#333;}
}


@media screen and (min-width: 768px){/*パソコンのみの設定*/
#maincatch { height:531px;}
#maincatch {padding:60px 0 60px 0;}


/*ナビゲーション設定*/
#navigation { width:695px; margin:auto;}/*ナビゲーションの横幅*/
ul#menu-glnv {}/*ナビゲーションの高さ　ここを設定したらスマホ版も設定する*/
ul#menu-glnv>li { padding:10px 0; padding:20px 0;}
ul#menu-glnv>li a { color:#FFF;}



#menu-glnv > li a:hover { color: #ccc; }/*マウスオーバー時*/
#menu-glnv > li:hover > a { opacity:0.7; }/*ナビゲーションの文字にカーソルがある時の色*/
.current-menu-item a { }/*ナビゲーションカレントの背景設定*/
/*ナビゲーション　プルダウンの設定*/
li ul.sub-menu { width:280px; }/*プルダウンの幅*/
li ul.sub-menu li a { color: #333 !important; }/*プルダウンの文字の色*/
ul#menu-glnv>li { background:url(https://just-house.info/images/parts/navi.png) no-repeat }/*ナビゲーションの文字の間の装飾*/
ul#menu-glnv>li:first-child { background:none;}/*ナビゲーションの文字の間の装飾を一番最初は削除している*/
/*ul#menu-glnv>li.current-menu-item a { color: #FFFF!important; background:none;}カレントメニューデザイン*/

}



/*-------------------------------------------------------------------------------------*/
/*タイトルデザイン* 
/*-------------------------------------------------------------------------------------*/
.design_title01 { background:url(./images/bg_title.png) no-repeat bottom center; font-size:3.3rem; text-align:center; padding-bottom:35px; margin-bottom:3.0rem;}

.design_title02 { background: url(/images/bg_title02.png) no-repeat left center;; font-size:2.2rem; text-align:left; padding-left:50px; margin-bottom:3.0rem;}
.design_title03 { color:#003333; font-size:23px; border-left:#003333 solid 3px; padding-left:10px; font-weight:bold; display:block; }
.design_title04 {
  position: relative;
  display: inline-block;
  margin-bottom: 2em;
}
.design_title04:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 100px;
  height: 3px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #30B116;
  border-radius: 2px;
}


.single_title { font-size:26px; padding:20px; margin-bottom:15px; color:#D71044;}

.title001 { font-size:6.6rem; margin-bottom:50px;}
.topred:first-letter { color:#D71044;}

ol.jccinfo li { list-style:decimal; margin-bottom:20px;}
/*-------------------------------------------------------------------------------------*/
/*ボタン設定* 
/*-------------------------------------------------------------------------------------*/
.btn01 { background-color:#F5F5F5; font-weight:bold;  display: inline-block; padding:1.5rem; text-align:center; 
-box-sizing: border-box;  -webkit-transition: all .3s;  transition: all .3s; min-width:172px;}
.btn01:hover {  background-color: #000; color:#FFF; text-decoration:none; opacity: 1; filter: alpha(opacity=100); -ms-filter: "alpha( opacity=100 )"; }

.btn02 { background-color:#DDCA81; font-weight:bold;  display: inline-block ; padding:1.5rem;  text-align:center; 
-box-sizing: border-box;  -webkit-transition: all .3s;  transition: all .3s;min-width:172px;}
.btn02:hover {  background-color: #000; color:#FFF; text-decoration:none; opacity: 1; filter: alpha(opacity=100); -ms-filter: "alpha( opacity=100 )"; }


/*-------------------------------------------------------------------------------------*/
/*横幅縦幅、各種必要マージン設定*/
/*-------------------------------------------------------------------------------------*/
.width { width:1080px; margin-left:auto; margin-right:auto;}

.contents { width:810px; float:left;}
#side_contents { width:230px; float:right;}



@media screen and (min-width: 320px) and (max-width: 768px) {/*スマホのみの設定*/
#keyvisual { height:880px;}
#maincatch { height:650px;}

.catch { padding:80px 20px;}



ul#menu-glnv>li { background:none; }/*ナビゲーションの文字の間の装飾を削除*/
	
.title001 { font-size:30px; margin-bottom:50px;}
.topred:first-letter { color:#D71044;}

ol.jccinfo li { list-style:decimal; margin-bottom:20px;}
.t60 { font-size:30px !important;}
}
/*---------------------------------------------------------
original
---------------------------------------------------------*/

.cause{  display: grid ;  padding: 0; grid-template-columns: 1fr 1fr 1fr 1fr;}


.cause li{    width: 100%;    margin: 0;	text-align: center;}

.cause li+li{
    position: relative;
}
.cause li+li::before{
    content: "";
    display: block;
    height: 6em;
    border-left: 2px solid #F8EDDC;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}



.contact{
	width:850px;
    list-style: none;
    display: flex;
    padding: 0;
}


.contact li{      width: 100%;    margin: 0;	text-align: center;}

.contact li+li{
    position: relative;
}
.contact li+li::before{
    content: "";
    display: block;
    height: 4em;
    border-left: 0.5px solid #DDD;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}

.qa { text-align:left; margin-bottom: 10px; border: none; color:#FFF;
    border-radius: 10px;
    background-color: #685248;
}

.qa summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em 1em 3em;
    color: #FFF;
    cursor: pointer;
}

.qa summary::before,
.qa p::before {
    position: absolute;
    left: 1em;
    font-weight: 600;
    font-size: 1.3em;
}

.qa summary::before {
    color: #FFF;
	font-weight:bold;
    content: "＋";
}

.qa[open] summary::before {
    color: #FFF;
	font-weight:bold;
    line-height: 1.2;
    content: "－";
}

.qa p {
    position: relative;
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: .3em 3em 1.5em;
    color: #FFF;
    transition: transform .5s, opacity .5s;
}

.qa[open] p {
    transform: none;
    opacity: 1;
}

.qa p::before {
    color: #FFF;
    line-height: 1.2;
    content: "　";
}




.causebg { background-color:#F8F4F0}

.box1{ padding: 2em 0; margin: 3em 0; color: #5d627b; background: white; box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.22);}

.box2wrap { position:relative; padding-bottom:60px; overflow:hidden;}
.box2 {
  padding: 2em 2em;
  background-color: white; /* ボックスの背景色を白に設定 */
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.22); /* シャドウ */
  clip-path: polygon(0 0, 90% 0, 100% 20%, 100% 100%, 0 100%); /* 右上の角を切り落とす形状 */
}






.singlepageaa { height:250px; padding-top:150px !important; color:#FFF; font-size:24px;}
.singlepageaa2 { height:250px; padding-top:150px !important; color:#FFF; font-size:24px;}

.single-fudo h1.entry-title  { font-size:2.2rem}
.innt { color:#FAF000 !important; background-color:#039E88 !important;}
span.newsicon { background-color:#DDCA81; font-size:1.3rem; padding:5px; color:#FFF;}


@media screen and (min-width: 320px) and (max-width: 768px) {
.box2 {
  clip-path: polygon(0 0, 90% 0, 100% 50px, 100% 100%, 0 100%); /* 右上の角を切り落とす形状 */
}

}



.style_reason {
    background-repeat: no-repeat;
    background-size: auto 100%;
    padding: 50px 0;
}


.style50 {
    background-repeat: no-repeat;
    background-size: auto 100%;
    padding: 50px 0;
}

.btn03 {
    border: #FFF solid 1px;
    padding: 10px 20px 10px 20px;
}

.footer001 {
    background-image: url(./images/bg_contact.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    padding: 60px 0;
}

.eigode { background-color: #00699B; color:#FFF; padding:8px; border-radius: 8px; margin-right:10px; cursor:pointer;}
.nihongode { background-color: #00699B; color:#FFF; padding:8px;  border-radius: 8px; cursor:pointer;}
.noactivee { background-color:#FFF; color:#333; border:#00699B solid 1px;}
.float_member{ float:right; padding-left:10px; padding-bottom:10px; }
.nihongoyaku { margin-top:30px;}
.eigoyaku { margin-top:30px;}
.plof_name { font-size:20px; font-weight:bold;font-family:"Times New Roman", "游明朝", YuMincho,"ヒラギノ明朝 Pr6 W6","Hiragino Mincho Pro", "HGS明朝E","メイリオ", "ＭＳ Ｐ明朝","MS PMincho",Meiryo, serif; border-bottom:#CCC solid 1px;}

.yakutoji { display:none;}
.gengolist {  border-radius: 20px; padding:3px 15px; font-size:11px; background-color:#D71044; color:#FFF; font-weight:bold; white-space:nowrap;} .gengolist a { text-decoration:none; color:#FFF;  white-space:nowrap;}


.titleback {
    background-image: url(./images/titleback_bg.png);
    height: 68px;
    background-repeat: no-repeat;
    background-position: right;
    position: absolute;
    right: 50%;
    width: 50%;
    top: 0;
}

.titleback_width {
    width: 540px;
    float: right;
    color: #30B116;
    font-size: 32px;
    padding-top: 10px;
}




ul.yajiruisi { width:560px; margin-left:auto; margin-right:auto;}
ul.yajiruisi li { background:url(https://just-house.info/images/2.png) no-repeat left center; text-align:left; padding-left:50px; margin-bottom:30px; font-size:18px;}

ul.newslist95 li { margin-bottom:15px; padding-bottom:15px; text-align:left; color:white; } 
ul.newslist95 li span { padding:0.6rem;  border-radius: 0px; display:inline-block; margin-left:20px; width:300px; text-align:left; font-size:1.8rem}
.maincolor_bg { background-color:#CCCC00}

table.tabledesign_1 { text-align:left;}
table.tabledesign_1 th { width:150px; font-weight:bold;}
table.tabledesign_1 th , table.tabledesign_1 td { padding:5px;}


.logopt { padding:7.5px; background-color:#96C7CE;}

.qacat { margin:30px 0; color:#666;}
.qatitle {
	background-color:#E26B38;
	padding:10px;
	font-size:100%;
	text-align:left;
	color:#FFF;
	margin-bottom:20px;
}
.qatitle:before { content:"Q"; opacity:0.6; padding-right:10px;} 
.com_style002 { background:url(https://just-house.info/images/bg/style002.jpg) center left no-repeat;}
.com_bgimg_style003 { background-image:url(https://just-house.info/images/bg/style003.jpg); background-size: cover;}
.bigcoin { width:850px; margin:auto; padding-left:230px;}

.postbox h3 { margin-top:50px; margin-bottom:20px; border-bottom:#C03 solid 1px; padding-bottom:10px; font-size:26px;}



/*---------------------------------------------------------
chachanimation
---------------------------------------------------------*/



.animetion1 {
    animation-name: fadein;
    animation-duration: 2s;
    animation-iteration-count: 1;
}
@keyframes fadein {
from {
    opacity: 0;
    transform: translateY(20px);
}
to {
    opacity: 1;
    transform: translateY(0);
}
}

.apptext { border-bottom:#DDCA81 solid 1px; padding-top:20px; font-size:1.4rem; font-weight: bold;} 
ul.app_bg li { padding:20px 0;}

ul.app_bg li:nth-child(odd) { background-color: #E2E2E2;}
 
 
 
 /*---slider------*/
 
 
 
html, body {
	margin: 0;
	padding: 0;
}
* {
	box-sizing: border-box;
}
.sliderArea {
	max-width: 100%;
	margin: 0 auto;
	padding: 0 25px;
}
.sliderArea.w300 {
	max-width: 300px;
}
.slick-slide {
	margin: 0 5px;
}
.slick-slide img {
	width: 100%;
	height: auto;
}
.slick-prev, .slick-next {
	z-index: 1;
}
.slick-prev:before, .slick-next:before {
	color: #000;
}
.slick-slide {
	transition: all ease-in-out .3s;
	opacity: .2;
}
.slick-active {
	opacity: 1;
}
.slick-current {
	opacity: 1;
}
.thumb {
	margin: 20px 0 0;
}
.thumb .slick-slide {
	cursor: pointer;
}
.thumb .slick-slide:hover {
	opacity: .7;
}

.slick-prev,.slick-next{    top:30% !important;}

/*====================================================================
.full-screen
====================================================================*/

.full-screen .slick-list {
	overflow: visible;
}
.full-screen.slider {
	max-width: 300px;
	margin: 0 auto;
}
/*====================================================================
以下は不要です。
====================================================================*/


.section {
  max-width: 100%;
	overflow: hidden;
}



.order { display: flex; justify-content: center;/*横*/ align-items:  flex-end;/*縦*/ }
.order  img { margin-left:15px; margin-right:15px;}
.ordertext { position:absolute; top:60px; left:50%;  transform: translate(-50%, 0%) scale(1.5); color:#FFF; font-weight:bold;}

img.stepimg { margin-left:40px;}
.sensen { position:absolute; top:100px; left:50px; background:url(images/sen.png) left top repeat-y; width:20px; height:300px; }


.bgstyle001 {  background-image:url(./images/bg_cause.png)}
.bgstyle001 p { line-height:2.5;}

.apuroti { display: grid ; column-gap: 3.3%; grid-template-columns: 1fr 1fr 1fr;}

@media screen and (min-width: 320px) and (max-width: 768px) {
		.bgstyle001 {  background-image: url(images/sp-bg001.png); background-size: 100% auto; background-position:top;}
		.order { display: block}
		.box2 { text-align:left; padding-left:50px; padding-top:100px;}
		.sp_reg { position:absolute; top:5px; left:5px;}
		img.stepimg { margin-left:0px; width:100%;}
		
		.cause{  display: grid ;  padding: 0; grid-template-columns: 1fr 1fr ;}
		.cause li { margin-bottom:60px;}
		
		.apuroti {  grid-template-columns: 1fr 1fr;}
.sensen { position:absolute; top:60px; left:23px; background:url(images/sen.png) left top repeat-y; width:20px; height:100%; }
#point .box2 { padding:30px;}

}


/*====================================================================
別案用
====================================================================*/
.w-001 { position:absolute; top:0; left:0; z-index:10;}
.w-title { background-color:#56413B; font-size:4.8rem; padding:4rem 2rem; color:#FFF; line-height:1.5; margin-top:60px;}

.w-004 { font-size:4rem; position:relative; display:inline-block; margin-top:6rem;}
.w-004::after{ content:''; display:inline;  width: 100%;  height: 8px;  background-color:#FCEE02;  position:absolute;  bottom: -20px;  left:50%;  transform: translateX(-50%)}



.liebana { background-image:url(images/line_bg.png); background-repeat:no-repeat; background-size: cover; background-position: left -50px}
@media screen and (min-width: 320px) and (max-width: 768px) {
	.liebana { background-position: -300px 0px; background-size: cover;}
}