@charset "UTF-8";
/*
    Template: swell
    Theme Name: kobayakawa
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/


@import url("./css/page.css");

/*-------------------------------------------------------------------*/


@media screen and (min-width:641px){.smp{display: none!important;}}
@media screen and (max-width:640px){.pc{display: none!important;}}

.pc{display: block!important;} 
.smp{display: none!important;} 
.tablet{display: none!important;}

@media screen and (max-width:641px){
	.smp{display: block!important;} 
	.pc{display: none!important;}
	.tablet{display: none!important;} 
}
@media screen and (min-width:641px) and (max-width:1024px){
	.tablet{display: block!important;} 
	.pc{display: none!important;} 
	.smp{display: none!important;}
}

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

.cf:before,.cf:after{content:"";display:block;overflow:hidden;}
.cf:after{clear:both;}
.cf{zoom:1;}

/*a{display: block;}*/

.wrap{
	max-width: 1200px;
	margin: 0 auto;
}

/* 共通 */
.displaynone{display: none;}
.postion-r{position: relative;}
.lineheight2{line-height: 2.0em;}
.border-r img{border-radius: 10px;}

@media screen and (max-width: 640px) {
.img-w40{max-width: 30%;}     
.img-w40{max-width: 40%;}    
.img-w50{max-width: 50%;}
.img-w60{max-width: 60%;}
.img-w70{max-width: 70%;}
.img-w80{max-width: 80%;}
.img-w90{max-width: 90%;} 
.mg-auto{margin-left: auto; margin-right: auto;}    
}



body {
  /* デフォルトのmarginをリセット */
  margin: 0;
  /* 最低でも画面の高さいっぱいに表示 */
  min-height: 100vh;

  /* 背景を線形グラデーションで指定 */
  background: linear-gradient(
    to bottom,      /* グラデーションの方向（上から下へ） */
    white 0px,      /* 開始色（白）を0pxから */
    white 400px,    /* 白を400pxまで（ここまで白単色） */
    #e6f1f7 600px   /* 400px地点の白から、600px地点の#e6f1f7へグラデーション */
                    /* 600px以降は自動的に最後の色(#e6f1f7)が適用される */
  );

  /* 背景が繰り返さないように設定 */
  background-repeat: no-repeat;

  /* スクロールしても背景を固定する場合（お好みで）
  background-attachment: fixed; */
}

.top #content{padding: 0!important}



/*	header
-------------------------------------*/
.l-header__bar{display: none;}

.l-header {box-shadow: none;}


.header_contact{
	
}
.header_contact ul{
	display: flex;
	justify-content: right;
	margin: 14px 0;
}
.header_contact ul li{
	
}
.header_contact ul li:first-child a{
	font-size: clamp(18px,1.8vw,23px);
	padding-right: 31px;
}
.header_contact ul li:last-child a{
	background: #1995AD;
	color: #fff;
	border-radius: 50px;
	font-size: clamp(16px,1.6vw,18px);
  	padding: 10px 38px;
}
.header_contact ul li:first-child img{
	display: inline-block;
	vertical-align: sub;
	margin-right: 8px;
}
.header_contact ul li:last-child img{
	display: inline-block;
	vertical-align: sub;
	margin-right: 8px;
}
.c-gnav{
	height: auto;
}
.c-gnav > .menu-item > a .ttl {
  	font-size: clamp(15px,1.5vw,17px);
}
.c-gnav > .menu-item > a {
  	padding: 7px 23px 18px;
}

.l-fixHeader__gnav .c-gnav {
  	height: 100%;
}
.l-fixHeader__gnav .c-gnav > .menu-item > a .ttl {
  	font-size: 15px;
}
.l-fixHeader__gnav .c-gnav > .menu-item > a {
  	padding: 7px 20px 7px;
}



/*	footer
-------------------------------------*/
.copyright{display: none;}

#footer{	
}
.f-area{
	padding: 50px 0;
    background: #fff;
}
.f-area .f-logo{
	width: 355px;
}
.f-area ul.menu-smp{
	display: none;
}
.f-area02{
	background: #1995AD;
	color: #fff;
	padding: 20px 0;
}
.f-area02 ul{
	float: left;
}
.f-area02 ul li{
	display: inline-block;
	line-height: 1.0em;
}
.f-area02 ul li a{
	font-size: 14px;
	border-right: 1px solid #fff;
  	padding: 0 20px;
}
.f-area02 ul li:last-child a{
	border-right: none;
}
.f-area02 .copy{
	float: right;
	font-size: 13px;
}


@media screen and (max-width:641px){
	.f-area {
   		padding: 36px 0;
	}
	.f-area .f-logo {
  		width: 320px;
  		margin: 0 auto;
	}
	.f-area ul.menu-smp{
		display: flex;
    	justify-content: center;
    	padding: 20px 0 0;
	}
	.f-area ul.menu-smp li a{
		font-size: 12px;
    	border-right: 1px solid #333;
    	padding: 0 16px;
		line-height: 1.3em;
	}
	.f-area ul.menu-smp li:last-child a{
		border-right: none;
	}
	.f-area02 ul {
  		display: none;
	}
	.f-area02 .copy {
  		float: none;
  		font-size: 11px;
  		text-align: center;
	}
}

/*	mainimg
-------------------------------------*/
    .p-mainVisual__textLayer{top:-150px!important}   
.p-mainVisual__slideTitle{
	font-family: "ten-mincho", serif;
	font-size: 3.5vw;
}



@media screen and (max-width:641px){
	/*.p-mainVisual {
   		width: 150%;
	}
	.c-filterLayer::after, .c-filterLayer::before, .c-filterLayer__img {
    	left: -120px;
	}
	.p-mainVisual__textLayer{
		top: -43px;
    	left: 65%;
	}
	.p-mainVisual__slideTitle{
		writing-mode: vertical-rl;
		text-align: initial;
		line-height: 1.8;
		font-size: 23px;
		color: #fff;
    	background: rgba(25,149,173,0.80);
		width: 179px;
    	padding: 30px 28px 30px 20px;
	}*/
    .p-mainVisual__textLayer{top:-150px!important}   
    .p-mainVisual__slideTitle{font-size: 23px;}
}


/*	top
-------------------------------------*/
.top .l-content{
	margin: 0 auto!important;
}
.whole-bg{
	padding-bottom: 0!important;
}
.top-h2{
	font-family: "Josefin Sans", sans-serif;
	font-weight: 600!important;
	font-size: clamp(50px,5.0vw,72px)!important;
	letter-spacing: -0.1rem !important;
	margin-bottom: 0 !important;
	line-height: 1.1!important;
}
.top-jpttl{
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0.1em;
}

.txt-type01{
	font-size: 18px;
}

.business-area{
	padding-bottom: 6em;
}
ul.business-type{
	list-style: none;
	padding: 15px 0;
  	width: 85%;
}
ul.business-type li{
	font-size: clamp(17px,1.7vw,22px);
	font-weight: 500;
	background: #fff;
	border-radius: 10px;
	padding: 18px 31px;
	margin-bottom: 13px;
	box-shadow: 0px 0px 15px -5px #68a7af;
}
ul.business-type li img{
	vertical-align: text-top;
	margin-right: 23px;
}
.photo-box{
	padding-top: 82px;
}

.about-area{
	padding-bottom: 8em !important;
	border-top-left-radius: 60px;
	border-top-right-radius: 60px;
	border-bottom-right-radius: 60px;
}
.about-txt{
	font-size: 22px;
	font-weight: 500;
}
.name-box .conName-sml{
	font-size: 17px;
  	font-weight: 500;
}
.name-box .conName{
	font-size: 25px;
	font-weight: 500;
}
.name-box .operateCom{
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.05em;
	padding: 0 0 17px;
}
.add-box{
	font-weight: 500;
}
.add-box .tel{
	padding: 15px 0 50px;
}
.add-box .bigger{
	font-size: 20px;
}

.btn-black a{
	width: 340px;
	justify-content: left!important;
	padding: 17px 42px;
}
.btn-black .__icon{
	font-size: 1.8em!important;
	margin-left: 100px;
}

.illust-couple{
	position: absolute;
	top: -206px;
  	left: 1%;
}
.illust-woman{
	position: absolute;
	bottom: -160px;
  	right: -50px;
}

.news-area{
	border-top-left-radius: 60px;
}
.news-area .p-postList__link{
	padding: 15px 30px;
	border-bottom: 1px solid #7DBEDC;
}
.news-area .p-postList.-type-simple{
	border-top: none;
}
.news-area .u-thin{
	color: #1995AD;
	font-size: 13px;
}
.news-area .icon-posted::before{
	display: none;
}

.btn-white a{
	width: 355px;
	justify-content: left!important;
	padding: 17px 42px;
	color: #1995AD;
}
.btn-white .__icon{
	font-size: 1.8em!important;
	margin-left: 100px;
}
.illust-meeting{
	position: absolute;
	bottom: -163px;
  	right: 9%;
}


@media screen and (max-width:641px){
	.top #content {
  		padding-top: 2em;
	}
	.top-jpttl {
  		font-size: 17px;
		margin-bottom: 1.5em;
	}
	.txt-type01 {
  		font-size: 16px;
	}
	.business-area {
  		padding-bottom: 2em;
	}
	ul.business-type {
  		width: 100%;
		padding: 16px 0;
	}
ul.business-type li{
	padding: 14px 20px;
    margin-bottom: 10px;
}  
ul.business-type li img{
   margin-right: 15px;    
   width: 25px;        
    }    
	.photo-box {
  		padding-top: 20px;
		height: 400px;
	}
	.photo-box .wp-block-image{
		height: 100%;
	}
	.photo-box img{
		height: 100%;
		object-fit: cover;
		border-radius: 30px;
	}
	.illust-couple{
		display: none;
	}
	.about-txt {
  		font-size: 16px;
	}
	.name-box .conName-sml {
  		font-size: 16px;
  	}
	.name-box .conName {
  		font-size: 24px;
	}
	.name-box .operateCom {
  		font-size: 15px;
	}
	.add-box .add{
		font-size: 15px;
	}
	.add-box .tel {
    	font-size: 15px;
		padding: 15px 0 20px;
	}
	.add-box .bigger {
  		font-size: 21px;
	}
	.btn-black{
		text-align: center !important;
	}
	.btn-black a {
  		width: 72%;
    	padding: 14px 28px;
		font-size: 14px;
	}
	.btn-black .__icon {
    	margin-left: 60px;
	}
	.illust-woman {
    	bottom: auto;
  		top: 35%;
		right: 0;
    	width: 140px;
		z-index: -1;
	}
	.map{
		padding-top: 40px;
	}
	.news-area{
		padding-bottom: 7em !important;
	}
	.news-area h2{
		margin-left: 10px;
	}
	.news-area .top-jpttl{
		margin-left: 10px;
	}
	.news-area .p-postList__link {
  		padding: 15px 11px;
	}
	.news-area .p-postList__title{
		font-size: 15px;
	}
	.recruit-area{
		padding-bottom: 0.5em !important;
	}
	.recruit-area p{
		font-size: 15px;
	}
	.illust-meeting {
    	bottom: auto;
  		right: 5%;
    	top: -115px;
    	width: 170px;
	}
	.btn-white{
		text-align: center !important;
	}
	.btn-white a {
  		width: 80%;
    	padding: 14px 28px;
		font-size: 14px;
	}
	.btn-white .__icon {
    	margin-left: 80px;
	}
}

/* table
--------------------------------------------*/
.table-type1 table{}

.table-type1 table{
	border-collapse: separate !important;
  	border-spacing: 5px !important;
}
.table-type1 table th{
	border: none!important;
	padding: 25px 10px 25px 30px!important;
	position: relative;
	box-shadow: var(--swl-box_shadow);
    font-weight: normal;
    background-color: #1995AD!important;
    color: #fff;
    max-width: 200px!important;
}
.table-type1 table td{
	border-top: none!important;
	border-right: none!important;
	border-bottom: none!important;
	border-left: 3px solid #1995AD!important;
	padding: 25px 10px 25px 30px!important;
	position: relative;
	line-height: 1.6em;
	box-shadow: var(--swl-box_shadow);
}

@media screen and (max-width: 640px) {
.table-type1 table{font-size: 14px;}    
.table-type1 table th{
	padding: 15px 10px!important;
    width: 25%!important;
}
.table-type1 table td{
	padding: 15px 10px 15px 15px!important;
}
.table-type2 table{font-size: 14px;}   
}


/* mykomon
--------------------------------------------*/
#mkcontents{font-size:  clamp(14px,1.4vw,16px);}
#mkcontents table{font-weight: normal;}
.list-mykomon {font-size: clamp(14px,1.4vw,16px);}
.list-mykomon dt{border-bottom: dashed 1px #7DBEDC;; padding: 10px; width: 100%;}
.list-mykomon .news-top{margin-bottom: 10px!important;}
.list-mykomon .news-title{font-weight: normal!important;}
.list-mykomon .news-date{font-weight: normal!important;color: #1995AD!important; font-size: 13px;}
.list-mykomon-border{border:solid 3px #1995AD; border-radius: 10px; padding:30px 5%; background: #fff;}
.list-mykomon-border a{display: block; margin-top: 10px;}

@media screen and (max-width: 640px) {
.list-mykomon-border{padding:20px 5%;}
}


