﻿@charset "utf-8";

/* worldsquare */

body.ft01, body.ft01 #setting_modal .heading_design *{
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	font-size: 1.4rem;
	color:#333;
	}


/*common
------------------------------------------*/
a{ color: #80889c; }

a.btn01{
	background: #fff200;
	display: inline-block !important;
	color: #333 !important;
	font-weight: bold;
	line-height: 1;
	padding: 10px 15px;
	width: auto !important;
	transition: .3s;
	}

a.btn01:hover{
	background-color: #000;
	color: #fff !important;
	}


/*header
------------------------------------------*/
header{
	background: url(https://prod-storage-tl-s3.s3.ap-northeast-1.amazonaws.com/asr44erovr742zg6qfbh2ayvnm69) repeat-x #fff;
	}
	
header h1{
	font-size: 1rem;
	font-weight: normal;
	top: 20px !important;
	}

header .logo, header .logo a{
	max-width: inherit;
	}

header .logo{
	padding: 20px 0 0 !important;
	}

header .logo a img{
	height: 50px;
	}

header .wraper>.inner{
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 30px 0;
	}

header .header_contents{
	width: auto;
	padding: 0 !important;
	margin: 0;
	}


/* ボタン */
header .header_contents .header_col1 .btn{
	margin: 0;
	min-height: inherit;
	}

header .header_contents .header_col1 .btn a{
	background-color: #000;
	color: #fff !important;
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 1;
	text-decoration: none;
	padding: 10px 15px;
	margin: 0 0 0 10px !important;
	position: relative;
	z-index: 2;
	width: auto;
	}

header .header_contents .header_col1 .btn a:hover{
	opacity: 0.6;
	}

header .header_contents .header_col1 .btn>a:nth-of-type(2){
	background-color: #fff200;
	color: #333 !important;
	}

header .header_contents .header_col1 .block-url .link_setting{
	font-size: 1.2rem;
	line-height: 1;
	}

header#pattern5 .link_setting a{
	margin-right: 20px;
	}

header#pattern5 .link_setting a::before, footer#f-pattern2 nav ul li a:before{
	width: 5px;
	height: 5px;
	margin-right: 5px;
	}


/* 電話番号・住所 */
header .header_contents .header_col1 .tel{
	font-weight: bold;
	}

header .header_contents .header_col1 .tel svg{
	position: static;
	display: inline;
	width: 20px;
	}

header .header_contents .header_col1 .tel .teli{
	padding: 5px 0 0;
	text-align: right;
	}

header .header_contents .header_col2{
	font-size: 1.2rem;
	}

header .header_contents .header_col2 .add{
	margin: 0;
	}

header .header_contents .header_col1 .block-url{
	margin-bottom: 10px;
	}


/* Gナビ */
header nav{
	background: #fff !important;
    padding-bottom: 30px;
	}

header nav ul.nav_1st{
	max-width: 800px !important;
	}

header nav ul.nav_1st::before{
	content: "";
	width: 1200px;
	height: 3px;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	position: absolute;
	}

header nav ul.nav_1st > li{
	text-align: center;
    line-height: 1;
	}

header nav ul.nav_1st > li:after{
	content: none;
	}

header nav ul.nav_1st>li>a{
	font-size: 1.6rem;
	font-weight: bold;
	text-decoration: none;
    background: #fff;
	}

header nav ul.nav_1st > li > a span{
	line-height: 2;
	}

header nav ul.nav_1st>li>a:hover{
	background-color: #fff;
	opacity: 1;
	}

header nav ul.nav_1st>li>a:hover span{
	color: #666 !important;
    text-decoration: underline;
	}

header nav ul.nav_1st > li.current a span{
    text-decoration: underline;
	}

header nav ul.nav_2nd > li{
	margin-bottom: 1px;
	border: none;
	}

header nav ul.nav_2nd li a{
	background-color: #333;
	color: #fff !important;
	padding: 10px;
	text-align: center;
	text-decoration: none;
	}

header nav ul.nav_2nd li a span{
	color: #fff !important;
	}

header nav ul.nav_2nd>li>a:after{
	content: none;
	}

header nav ul.nav_2nd li a:hover{
	opacity: 0.6;
	}



/*footer
------------------------------------------*/
footer{
	background-color: #eee;
	}

footer a{
	color: #333 !important;
	}

footer .content_wrapper{
	padding: 50px 0 !important;
	}

footer#f-pattern2 .logo img{
	width: auto;
	height: 25px;
	}

footer#f-pattern2 .company-info{
	margin-top: 10px;
	}

footer#f-pattern2 #cp-pattern2{
	font-size: 1.2rem;
	line-height: 1;
	position: absolute;
	left: 0;
	bottom: 50px;
	}

footer .sns i{
	width: inherit !important;
	height: auto !important;
	font-size: 2rem;
	padding: 10px 10px 0 0;
	}

footer#f-pattern2 nav{
	padding-bottom: 100px;
	}

footer#f-pattern2 .ft-menu-p2{
	width: auto;
	}

footer#f-pattern2 .content_wrapper .contents_btn01 a{
	margin: 0 0 0 15px !important;
	background: #000;
	color: #fff !important;
	font-weight: bold;
	}

footer#f-pattern2 .content_wrapper .contents_btn01 a:hover{
	opacity: 0.6;
	}

footer#f-pattern2 .content_wrapper .contents_btn01 a:last-child{
	background: #fff200;
	color: #333 !important;
	}

#fixbtn{
	margin-bottom: 0;
    min-height: inherit !important;
	}

#fixbtn .inner{
	justify-content: center;
	}

#fixbtn .inner>div{
	padding: 0;
	}

#fixbtn .fixbtnwrap{
	background-color: #e5e5e5;
	}

#fixbtn #scrolltop a:before{
	border-color: #333;
	}


/*top
------------------------------------------*/
.mainvisual{
	text-align: center;
	background-color: #fff;
	}

.composite_box01.block_images_1 .inner_item{
	border-top: 3px solid #000;
	padding-top: 20px;
	}

.composite_box01.block_images_3 .inner_item .inner_item_txt{
	background-color: #fbf2f2;
	padding: 10px;
	margin-top: 0;
	}

.composite_box01.block_images_9 .inner_item_txt .heading:before{
	content: none;
	}

.block_news_1 .block_header_1 .h{
	font-weight: bold;
	font-size: 2rem;
	border: 2px solid #000;
	box-shadow: 5px 5px 0px 0px #000;
	padding: 10px 20px
	}

.block_news_1 .contents_btn01.block_button_1 a{
	background: #fff200;
	font-weight: bold;
	}

.block_news_1 .contents_btn01.block_button_1 a:hover{
	background: #000;
	color: #fff !important;
	}



/*footer
------------------------------------------*/
footer .content_wrapper{
	padding: 25px 2% !important;
	}

footer#f-pattern2 #cp-pattern2{
	left: 2%;
	bottom: 25px;
	}

footer .sns i{
	width: inherit !important;
	height: auto !important;
	font-size: 2rem;
	padding: 10px 10px 0 0;
	}

footer#f-pattern2 .content_wrapper .contents_btn01 a{
	margin: 0 0 0 15px !important;
	}




/*subpage
------------------------------------------*/
#lv{
	height: 200px;
	background: #dae9e6;
	}

#lv p span{
	color: #333;
	}

#lv p span:before,
#lv p span:after{
	content: none;
	}

#lv:not(.parallax).blur0 .parallax_img{
	display: none;
	}

#pan{
	border: none;
	background: #fff;
	padding: 10px;
	}

#pan ul{
	justify-content: flex-start;
	padding: 0;
	}

#pan ul li{
	padding: 0;
	}

#pan ul li:first-child{
	padding-left: 0;
	}

#pan ul li:before, #pan ul li:after{
	content: ">";
	border: none;
	transform: rotate(0);
	display: inline;
	position: static;
	margin: 0 10px;
	}

#pan ul li:after{
	content: none;
	}

.parallax{
	box-shadow: none;
	}

.parallax_img{
	display: none;
	}



/*parts
------------------------------------------*/
.contents_box01.block_image_text_12 .inner_item_txt{
	padding: 20px;
	}

.contents_box01.block_image_text_12 .inner_item_img{
	padding: 20px;
	}

#sidebar section, #sidebar > div{
	border-bottom: none;
	padding: 0;
	}

#sidebar .sidebar_list{
	border-top: 2px solid #333;
	}

#sidebar .sidebar_list li{
	margin: 0;
	border-bottom: 1px dotted #ccc;
	}

#sidebar .sidebar_list li:first-child{
	border-top: none;
	background-color: #f9f9f9;
	font-weight: bold;
	}

#sidebar .sidebar_list li:first-child a{
	padding-left: 15px !important;
	font-size: 120%;
	}

#sidebar .sidebar_list li:first-child a::before{
	content: none;
	}

#sidebar .sidebar_list a{
	padding: 15px 15px 15px 30px !important;
	display: block;
	transition: .3s;
	}

#sidebar .sidebar_list a:hover{
	opacity: 0.6;
	}

#sidebar .sidebar_list a:before, #local_side_nav .sidebar_list a:before{
	left: 15px;
	border-color: #093b6f;
	}

.widget_map .heading.block_header_1{
	background-color: #f9f9f9;
	border-bottom: 1px solid #333;
	padding: 15px 20px 10px;
	}

.widget_map .heading.block_header_1 .h{
    font-size: 2.0rem;
    font-weight: bold;
	}

.widget_map .heading.block_header_1::before {
    content: "";
    display: block;
    width: 5px;
    height: 20px;
    background: #333;
    margin-top: -10px;
    top: 50%;
    left: 0;
	}

.block_table_1 .heading.block_header_1{
	background-color: #f9f9f9;
	border-bottom: 1px solid #333;
	padding: 15px 20px 10px;
	}

.block_table_1 .heading.block_header_1 .h{
    font-size: 2.0rem;
    font-weight: bold;
	}

.block_table_1 .heading.block_header_1::before {
    content: "";
    display: block;
    width: 5px;
    height: 20px;
    background: #333;
    margin-top: -10px;
    top: 50%;
    left: 0;
	}

.contents_box01.block_text_1 .heading.block_header_1{
	border-bottom: 1px solid #333;
	margin-bottom: 15px;
	padding-bottom: 10px;
	}

.contents_box01.block_text_1 .heading.block_header_1 .h{
	font-size: 2.1rem;
	font-weight: bold;
	}

.heading.block_header_1 p, .heading.block_header_6 .h{
	font-weight: bold;
	}

.heading.block_header_3{
	background: #f9f9f9;
	border-top: 2px solid #333;
	padding: 20px;
	display: flex;
	align-items: flex-end;
	}

.heading.block_header_3 .h{
	color: #333 !important;
	font-size: 3rem;
	margin-right: 10px;
	}

.heading.block_header_3 p{
	color: #093b6f !important;
	}

.blockarea.block_header .heading.block_header_4 .h{
	border-top: 2px solid #333;
	border-bottom: 1px solid #ccc;
	background-color: #f9f9f9;
	font-size: 2.6rem;
	padding: 15px;
	}

.heading.block_header_4 p{
	font-weight: bold;
	}

.heading.recruit-title{
	border-color: #333;
	background: #f9f9f9;
	}

.heading.recruit-title h3{
	border-left: 5px solid #333;
	}

.recruit_info .detail .block_table_3 table th{
	background: #f9f9f9;
	}

.recruit_info .contents_btn01.block_button_1 a{
	background: #fff200;
	font-weight: bold;
	}

.contents_box01.block_image_text_4 .heading.block_header_1{
	background-color: #f9f9f9;
	border-bottom: 1px solid #333;
	padding: 15px 20px 10px;
	}

.contents_box01.block_image_text_4 .heading.block_header_1 .h{
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 5px;
	}

.contents_box01.block_image_text_4 .heading.block_header_1::before{
	content: "";
	display: block;
	width: 5px;
	height: 20px;
	background: #333;
	margin-top: -10px;
	top: 50%;
	left: 0;
	}

.widget_shop01.block_map_1 .heading.block_header_4{
	background-color: #f9f9f9;
	border-bottom: 1px solid #333;
	padding: 15px 20px 10px;
	}

.widget_shop01.block_map_1 .heading.block_header_4::before{
	content: "";
	display: block;
	width: 5px;
	height: 20px;
	background: #333;
	margin-top: -10px;
	top: 50%;
	left: 0;
	}

.widget_shop01 dt{
	background-color: #f9f9f9;
	padding-left: 10px;
	font-weight: bold;
	}

.widget_sitemap .content_wrapper>ul>li>a:before{
	background: #333;
	}

.widget_sitemap .content_wrapper>ul>li li>a:after{
	border-color: #333;
	}

.widget_sitemap .heading.block_header_1{
	display: none;
	}

.widget_form form .submit input{
	font-size: 1.4rem;
	line-height: 1;
	background: #000;
	padding: 15px;
	}

.widget_form form .submit input:hover{
	opacity: 0.6;
	}

.widget_form form select{
	font-size: 1.4rem;
	}

.widget_form form dd p{
	font-size: 1.2rem;
	margin-top: 5px;
	}

.widget_form form dd p.error{
	font-weight: bold;
	}

.pager2 li{
	width: auto;
	margin: 0 10px;
	}

.pager2 li a{
	background: #333;
	border-radius: 0;
	color: #fff !important;
	}

.pager2 li.prev a,
.pager2 li.next a{
	background: none;
	color: #333 !important;
	}

main form .submit span,
main form .submit span:hover{
	background: none;
	}

.contents_box01.block_image_text_3 .heading.block_header_2,
.contents_box01.block_image_text_4 .heading.block_header_2{
	border-color: #333;
	}

.contents_box01.block_image_text_3 .heading.block_header_2::before,
.contents_box01.block_image_text_4 .heading.block_header_2::before{
	content: none;
	}

.contents_box01.block_image_text_12 .wrapper_item{
	border-color: #ccc;
	}

.contents_faq01 dt{
	font-size: 1.8rem;
	font-weight: bold;
	padding-left: 25px;
	}

.contents_faq01 dt:before{
	font-family: 'Roboto', sans-serif;
	font-size: 2.4rem;
	color: #000;
	}

.contents_faq01 dd{
	padding-left: 0;
	}

.contents_faq01 dd:before{
	content: none;
	}




/*tablet
================================================================================================================================*/
@media screen and (max-width: 900px){

/*header
------------------------------------------*/
header .logo{
	padding: 0;
	}

header .logo a img{
	max-width: initial;
	}

header .wraper>.inner{
	padding: 0;
	}

header .header_contents .inner .header_col1{
	order: 1;
	border: none;
	}

header .header_contents .header_col1 .block-tel{
	margin-top: 0;
	}


/* Gナビ */
header .header_contents .inner #menu_head{
	order: 1;
	}

header nav{
	border-bottom: none;
	}

header nav ul.nav_1st{
	max-width: inherit !important;
	}

header nav ul.nav_1st{
	margin-bottom: 0;
	}

header nav ul.nav_1st::before{
	content: none;
	}

header nav ul.nav_1st > li > a{
	display: block;
	text-align: center;
	padding: 15px !important;
	}

header nav ul.nav_1st > li.current > a{
	background-color: #ff646c;
	}

header nav ul.nav_1st > li.current a span{
	box-shadow: none;
	color: #fff;
	}

header .header_contents .header_col1{
	padding-bottom: 40px;
	}

header .header_contents .header_col2{
	border: none;
	padding: 0 !important;
	margin: 0 !important;
	}

header .header_contents .header_col1 .btn{
	position: static;
	}


/*top
------------------------------------------*/
.mainvisual{
	padding: 0 2%;
	}

.block_news_1 .content_wrapper{
	width: 96%;
	}

.block_news_1 .content_wrapper{
	padding: 20px;
	}


/*subpage
------------------------------------------*/
#lv{
	height: 100px;
	}

#main .column2{
	padding-bottom: 0;
	}


/*parts
------------------------------------------*/
.contents_box01:not(.block_image_text_2):not(.block_image_text_6) .wrapper_item{
	display: flex;
	justify-content: space-between;
	}

.contents_box01.block_image_text_3 .inner_item_txt,
.contents_box01.block_image_text_4 .inner_item_txt{
	padding: 0 !important;
	width: 48%;
	flex-basis: 48%;
	}

.contents_box01.block_image_text_12 .inner_item_txt{
	width: 50%;
	flex-basis: 50%;
	}

.contents_box01.block_image_text_3 .inner_item_img,
.contents_box01.block_image_text_4 .inner_item_img,
.contents_box01.block_image_text_11 .inner_item_img,
.contents_box01.block_image_text_12 .inner_item_img{
	padding: 0 !important;
	width: 48%;
	flex-basis: 48%;
	}

.contents_box01.block_image_text_11 .inner_item_img img,
.contents_box01.block_image_text_12 .inner_item_img img{
	width: 100% !important;
	}

.contents_box01.block_image_text_3 .heading.block_header_2,
.contents_box01.block_image_text_4 .heading.block_header_2{
	padding-left: 0;
	}

.column2 #sidebar{
	border: none;
	margin: 0 !important;
	}

.sidebanner{
	background: #f9f9f9;
	padding: 30px !important;
	}

.sidebanner ul{
	display: flex;
	justify-content: center;
	}

.sidebanner ul li{
	flex-basis: 30%;
	width: 30%;
	margin: 0 1%;
	}
}




/*sp
================================================================================================================================*/
@media screen and (max-width: 640px){

/*header
------------------------------------------*/
header .logo{
	max-width: 85% !important;
	}

header .logo a img{
	max-width: 100%;
	height: auto;
	}

header .header_contents .header_col1 .block-url{
	display: block;
	}

header .header_contents .header_col1 .block-url .link_setting{
	margin-right: 0 !important;
	}

header#pattern5 .link_setting a{
	margin: 0 10px;
	}

header .header_contents .header_col1 .btn{
	justify-content: center;
	margin-top: 10px;
	}

header .header_contents .header_col1 .btn a{
	margin: 0 10px !important;
	}


/*footer
------------------------------------------*/
footer .content_wrapper{
	padding: 0 !important;
	}

footer#f-pattern2 nav{
	padding-bottom: inherit;
	}

footer#f-pattern2 nav ul{
	margin-left: -1px;
	}

footer#f-pattern2 nav ul li{
	border: none !important;
	border-left: 1px solid #ddd !important;
	border-bottom: 1px solid #ddd !important;
	}

footer#f-pattern2 .ft-menu-p2{
	width: 50%;
	}

footer#f-pattern2 .content_wrapper .contents_btn01{
	margin-top: 20px;
	}

footer#f-pattern2 .content_wrapper .contents_btn01 a{
	margin: 0 10px !important;
	}

footer#f-pattern2 #cp-pattern2{
	position: static;
	padding: 10px 0 20px;
	}


/*top
------------------------------------------*/
.block_news_1 .content_wrapper{
	padding: 0;
	}


/*subpage
------------------------------------------*/
#lv{
	height: 60px;
	}


/*parts
------------------------------------------*/
.block_news_1 ul{
	width: 100%;
	}

.sidebanner ul{
	display: block;
	}

.sidebanner ul li{
	width: 100%;
	margin: 0 0 10px;
	text-align: center;
	}

.width_fixed .content_wrapper{
	max-width: 90% !important;
	}

.widget_sitemap .content_wrapper{
	max-width: initial !important;
	}

.composite_box01.block_images_1.block_image_text2 .inner_item .inner_item_txt{
	background-color: #f9f9f9;
	}

.contents_box01.block_image_text_12 .wrapper_item .heading.block_header_2{
    padding-left: 0;
	}

.contents_box01.block_image_text_3 .wrapper_item,
.contents_box01.block_image_text_4 .wrapper_item,
.contents_box01.block_image_text_12 .wrapper_item{
	display: flex !important;
	flex-wrap: wrap;
	}

.contents_box01.block_image_text_3 .wrapper_item > .inner_item_txt,
.contents_box01.block_image_text_4 .wrapper_item > .inner_item_txt,
.contents_box01.block_image_text_12 .wrapper_item > .inner_item_txt{
	order: 1;
	width: 100%;
	flex-basis: 100%;
	margin-bottom: 15px;
	}

.contents_box01.block_image_text_3 .wrapper_item > .inner_item_img,
.contents_box01.block_image_text_4 .wrapper_item > .inner_item_img,
.contents_box01.block_image_text_12 .wrapper_item > .inner_item_img{
	order: 2;
	width: 100%;
	flex-basis: 100%;
	}

article .entry_header .heading.block_header_2{
	padding-left: 0;
	}

article .entry_body .width_fixed .content_wrapper{
	max-width: 100% !important;
	}

.pager2 li{
	width: auto;
	margin: 0 5px;
	}

.pager2 li a{
	min-height: inherit;
	padding: 10px;
	}

.contents_faq01{
	padding: 0 !important;
	}

}



