@charset "UTF-8";
/* CSS Document */


@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');


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

共通base

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



*:focus {
  outline: none;
}
html{
    font-size: 62.5%;
}



body{
/*font-family:'futura-pt', 'Noto Sans JP', sans-serif;*/
font-family:"Poppins", "Noto Sans JP", sans-serif;
	font-style: normal;
	color: #212829;
	font-size: 1.6rem;
	letter-spacing: 0.04em;
	line-height:1.6;
	font-weight: 400;
	background:#FAF9F8;
	height:100%;
	font-feature-settings:"pkna";
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	scroll-behavior:smooth;
}




@media screen and (min-width: 769px){

body{min-width: 769px;}

}


@media screen and (max-width: 768px){

body{font-size: 1.4rem;}
	
}
	
	
	
	
	
img{image-rendering: -webkit-optimize-contrast;}
img{max-width:100%;height:auto;}
a{color: #212829;text-decoration: none;}
a.underline{text-decoration: underline;}
a.anchor{display: block;}
/* リンクボタンhover設定 */
a,a img{/*! transition:0.2s ease-in-out; */}


@media screen and (min-width: 769px){
a:hover{opacity:0.8;}

a.underline:hover{opacity:1;color: #4D76C3;}

}
/*a img:hover{opacity:0.8;}*/


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


.colorRed{color: #ed514e;}

.indent{text-indent: -1.4rem;padding-left: 1.4rem;}


p{line-height: 2.2;}
p + p {margin-top: 1.6rem;}

.dotline{padding-top: 5rem;border-top: 1px dashed #333;}



@media screen and (max-width: 768px){

p{line-height: 2.1;}
.dotline,
.dotline_sp{padding-top: 4rem;border-top: 1px dashed #333;}
.pcBreak br{display: none;}


}





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




@media screen and (min-width: 769px){

.wrap,
.pcwrap {
	width: 1040px;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
}
.pc_narrow {
	width: 850px;
}
	
.pc_wide {
	width: 100%;
	max-width: 1200px;
	min-width: 1040px;
	margin: 0 auto; 
}
.pc_wideL {
	width: 100%;
	max-width: 1300px;
	min-width: 1040px;
	margin: 0 auto; 
}
	
	
	
	
}



.is_PC{ display: block;}
.is_SP{display: none;}



@media screen and (max-width: 768px){
	

.wrap,.spwrap{width: 86%;margin: 0 auto;}
.wrap.sp_wide{width: 94%;}
.is_PC{display: none;}
.is_SP{display: block;}




}





/*--------------------
ふわっと
---------------------*/
.fadeIn{
animation-name:fadeInAnime;
animation-duration:2s;
animation-fill-mode:forwards;
opacity:0;
}


@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}



/*------------------
top-btn
------------------*/
.to-top{
	position: fixed;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 40px;
	right: 20px;
	bottom: 20px;
	cursor: pointer;
	background-repeat: no-repeat;
	background-image: url("../images/btnArrow_up_wh.svg");
	background-color: #ccc;
	background-position: center;
	background-size: 1.4rem;
}




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

共通header(navigation,logo)

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

h1{display: none;}
.logo a{letter-spacing: 0.05em;font-size:2.2rem;font-weight: 500;transition: .5s;color: #4C566F;}


@media screen and (min-width: 769px){

.head{
	width: 100%;
	min-width: 1000px;
	margin:0 auto;
	position:fixed;
	z-index: 999;
	box-sizing: border-box;
	top: 0;
	/*! background-color: rgba(255,255,255,0.95); */
	/*! border-bottom: 1px dotted #ccc; */
}


	
	
	
.headArea{
	display: flex;
	justify-content: space-between;
	align-items: center;
	/*! padding: 0 5%; */
	box-sizing: border-box;
	min-width: 1040px;
	margin: auto;
	height: 130px;
	transition: 1s;
	padding: 0 max(20px, 3%);
}
.is-animation .headArea{height: 60px;}
	
#top .is-animation.scrolled .headArea{background: #fffc;}
#mid .is-animation .headArea{background: #fffc;}	
	

	
#top .head{
	border-bottom: none;
}

	
/*navigation*/
	
.nav{
	display: block!important;
	overflow: revert!important;;
    position: revert!important;
    width: revert!important;
    height: revert!important;
}

.head .nav-list ul{display: flex!important;justify-content: flex-end;}
.head .nav-list li{margin:0;}
.head .nav-list li a{text-transform: uppercase;padding: 0.5rem;transition: .5s;/*! letter-spacing: 0.03em; */font-weight: 500;}
.head .nav-list li:not(:last-of-type){
	margin-right: 2.3rem;
}


.head .btn-trigger{display: none;}



}






@media screen and (max-width: 768px){

.logo{position: absolute;top: 25px;left: 7%;font-size: 1.2rem;z-index: 1;}
.logo a{font-size:2.2rem;}

	
	

/*メニュー開閉時の背景部分スクロール制御*/
html.is-fixed body{height: 100%;overflow: hidden;}

.head .nav{
	display: none;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100vw;
    height: 100vh;
    background-color: /*rgba(201,197,193,0.99)*/#FAF9F8;
    margin: 0;
/*	text-align: center;*/
	box-sizing: border-box;

}
	


	

	
	

.head .nav-list{margin: 0 auto 0;width: 90%;padding:9rem 0 5rem;}
.head .nav-list li{margin-bottom:0;font-size: 1.6rem;border-top:1px dotted #ccc;font-weight: 500;}
.head .nav-list li:last-of-type{border-bottom:1px dotted #ccc;}
.head .nav-list li a{
	padding: 2.5rem 0 2.5rem 0.5rem;
	display: block;
	background-image: url("../images/btnArrow.svg");
	background-size: auto 9px;
	background-position: right 0.5rem center;
	background-repeat: no-repeat;
	text-transform: uppercase;
}
	

	

.btn-trigger{
	display: block;
    -webkit-appearance:none;
    appearance:none;
    position: fixed;
	top: 15px;
	right: 15px;
    width: 50px;
    height: 50px;
    border: none;
    background-color: transparent;
    padding: 0;
	z-index: 9999;
	border-radius: 50px;
	background: #fff;
}

	

.btn-trigger span{
    position: absolute;
    display: block;
    width: 26px;
    height: 2px;
    background-color: #333;
    transition: all 0.5s;
	margin: 15px 0 0 12px;
}

/*#top .btn-trigger span{background-color: #fff;}
.is-fixed #top .btn-trigger span{background-color: #000;}*/

	
	
.btn-trigger span:first-of-type{top: 1px;}
.btn-trigger span:nth-of-type(2){top: 9px;}
.btn-trigger span:nth-of-type(3){top: 17px;width: 18px;}
.btn-trigger.active span:first-of-type{
	transform: rotate(45deg);
	top: 8px;
}
.btn-trigger.active span:nth-of-type(2){
	transform: rotate(-45deg);
	top: 8px;
}
.btn-trigger.active span:nth-of-type(3){
	transform: rotate(-45deg);
	top: 10px;left: 3px;
	background-color: transparent;
}	

}	




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

共通footer

------------------------------------------------------------------*/
#footer {background: #3A3E4A;color: #fff;}
#footer .wrap{padding-top:10rem;padding-bottom:8rem;display: flex;justify-content:space-between;}

#footer .title_name {margin-top: 5rem;}
#footer .title_name a{/*! font-family: "sheila", sans-serif; */font-size: 3rem;font-weight: 500;letter-spacing: 0.05em;color: #fff;}
#footer .copyright{font-size: 1.2rem;margin-top: 0.5rem;letter-spacing: 0.1em;}
#footer .nav-list{width: 29.92%;}
#footer .nav-list li{margin-bottom:0;font-size: 1.3rem;border-top:1px dotted #ccc;}
#footer .nav-list li:last-of-type{border-bottom:1px dotted #ccc;}
#footer .nav-list li a{
	padding: 2.5rem 0 2.5rem 0.5rem;
	display: block;
	background-image: url("../images/btnArrow_wh.svg");
	background-size: auto 7px;
	background-position: right 0.5rem center;
	background-repeat: no-repeat;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #fff;
	font-weight: 500;
}






@media screen and (max-width: 768px){
#footer .title_name {margin-top: 0rem;}
#footer .wrap{padding-top:6rem;padding-bottom:6rem;display: block;}
#footer .copyright{margin-top: 0.5rem;margin-top: 0;}	
#footer .title_name a{font-size: 2.2rem;}
#footer .nav-list{margin: 4rem 0 0;width: 100%;}
#footer .nav-list li{font-size: 1.2rem;}

}






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


/*共通base*/


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




#mid main{padding-top: 130px;padding-bottom: 12rem;}


@media screen and (max-width: 768px){
#mid main{padding-top: 8rem;padding-bottom: 5rem;}

}


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


@media screen and (min-width: 769px){

.readTxtBlock{width: 810px;margin: auto;}
	

}

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


.pb0{padding-bottom: 0!important;}
.bg_beige{background: #F0EEEC;}



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



.page-title{font-size:3.6rem;line-height: 1.4;text-align: center;font-weight: 600;}
.page-title_en{
	font-size: 1.5rem;
	color: #4D76C3;
	line-height: 1.4;
	text-transform: uppercase;
	text-align: center;
	margin-top: 1rem;
	font-weight: 500;
}

#top .page-title{font-size: 3.4rem;}
#top .page-title_en{margin-top: 0.7rem;}


.article-lead{padding-bottom: 2.5rem;margin-bottom:7rem;border-bottom: 1px solid #333;}
.article-lead__title{font-size: 3.4rem;font-weight: 500;}
.article-lead__category{/*! font-size: 1.6rem; */display: block;margin-top: 0.2rem;color: #4D76C3;}


.title-lv1{font-size: 2.4rem;text-transform: uppercase;}
.title-lv1::after{
	content: "";
	display: block;
	width: 50px;
	height: 1px;
	background: #000;
	margin: 2rem 0 0 0;
}


.title-lv2{/*! font-size: 1.4rem; */display: inline-block;font-weight: 400;}
.title-lv2::after{
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #000;
	margin-top: 0.3rem;
}




.catch-txt{font-size: 2.6rem;font-weight: 600;line-height: 1.7;margin-bottom:2.2rem;}

.title-txtL{font-size: 2rem;line-height: 1.7;margin-bottom: 1rem;font-weight: 500;}
.title-txtLL{font-size: 2.4rem;line-height: 1.7;margin-bottom: 2rem;font-weight: 500;}

.txt_en{font-size: 1.2rem;text-transform: capitalize;color: #4D76C3;}









@media screen and (max-width: 768px){
	
.page-title{font-size: 2.6rem;}
.page-title_en{font-size: 1.3rem;margin-top: 0.5rem;}
#top .page-title{font-size: 2.6rem;}
#top .page-title_en{font-size: 1.3rem;margin-top: 0.5rem;}

.article-lead{padding-bottom: 0;margin-bottom:3rem;border-top: 1px dashed #333;padding-top: 3rem;border-bottom: none;}
.article-lead__title{font-size: 2.4rem;}
.article-lead__category{font-size: 1.2rem;}
	
.title-lv1{font-size: 2.2rem;line-height: 1.3;}
.title-lv1::after{width: 50px;margin: 2rem 0 0;}

.title-lv2{font-size: 1.3rem;}

.catch-txt{font-size: 2rem;line-height:1.8;margin-bottom: 2rem;}

.title-txtL{font-size: 1.7rem;}
.title-txtLL{font-size:1.9rem;margin-bottom: 1.5rem;}

}



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




.btn a{
	background: #fff;
	/*! color: #212829; */
	padding: 2.2rem 2.5rem;
	border-radius: 5px;
	min-width: 270px;
	margin-bottom: 1px;
	display: inline-block;
	text-align: center;
	font-size: 1.4rem;
	background-image: url("../images/btnArrow.svg");
	background-size: auto 10px;
	background-position: right 15px center;
	background-repeat: no-repeat;
	font-weight: 500;
}


.btn-txt a{
	min-width: 140px;
	padding: 1.9rem 2rem;
	box-sizing: border-box;
/*	border: 1px solid #000;*/
	display: inline-block;
	font-weight: 500;
	font-size: 1.3rem;
	text-align: center;
	color:#333;
	background: #fff;
	background-image: url("../images/btnArrow.svg");
	background-size: auto 9px;
	background-position: right 10px center;
	background-repeat: no-repeat;
	border-radius: 3px;
}



@media screen and (max-width: 768px){
.btn-txt a,
.btn a{
	padding: 1.9rem 2rem;
	font-size: 1.3rem;
	background-size: auto 10px;
	background-position: right 15px center;
	width:100%;
	max-width: 360px;
	margin: 0 auto;
	display:block;
}
.btn-txt a{max-width: 220px;}

}


@media screen and (min-width: 769px) {

.flexBtn{display: flex;justify-content: center;}

}

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





ul.list li{
	display: flex;
	margin-bottom: 0.5rem;
}

ul.list li::before{
	content: "○";
	margin-right: 0.2rem;
	color: #000;
}





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

/* アンカーボタン */



@media screen and (min-width: 769px) {
/* リスト全体の余白リセット */
.anchor-list ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.anchor-list li {
    margin-bottom: 10px; /* 行の間隔 */
}

/* リンクエリアを「矢印＋文字」のみに限定 */
.anchor-list a {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    /*! color: #333; */        /* 文字の色 */
    /*! font-size: 16px; */
    font-weight: 500;
    transition: color 0.2s ease;
}
	

/* 矢印（>）のデザイン */
.anchor-list a::before {
    content: "";
    display: inline-block;
    width: 8px;         /* 矢印の幅 */
    height: 8px;        /* 矢印の高さ */
    border-top: 2px solid #999;   /* 矢印の太さと色 */
    border-right: 2px solid #999;
    transform: rotate(45deg);    /* 45度回転させて「>」にする */
    margin-right: 12px;          /* 文字との間隔 */
    transition: all 0.2s ease;
}

	
	
/* ホバー（マウスを乗せた時）の演出 */
.anchor-list a:hover {
    color: #4D76C3;     /* ホバー時に文字を青く（お好みで） */
}

.anchor-list a:hover::before {
    border-color: #4D76C3;       /* ホバー時に矢印も青く */
    transform: translateX(4px) rotate(45deg); /* 右に少し動かす */
}

}






@media screen and (max-width: 768px){
.anchor-list{
	margin-top: 4rem;
	border-top: 1px dashed #989898;
}
.anchor-list li{
	
}
.anchor-list li a{
	display: block;
	padding: 2.5rem 0.5rem;
	border-bottom: 1px dashed #989898;
	background-image: url("../images/btnArrow_un.svg");
	background-size: 10px auto;
	background-position: right 0.5rem center;
	background-repeat: no-repeat;
	font-weight: 500;
}

}





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



.worksList li .imgblock img{background: #3A3E4A17;}
.worksList li .txtblock h4{color: #4D76C3;text-transform: capitalize;font-size: 1.2rem;}

@media screen and (min-width: 769px) {

.worksList li{display: flex;justify-content: space-between;/*! align-items: center; */box-sizing: border-box;}
.worksList li .imgblock{width: 46%;}
.worksList li .txtblock{width: 46%;}

}


.worksList li .txtblock{font-size: 1.4rem;}
.worksList li .txtblock h3{font-size: 1.8rem;font-weight: 500;text-transform: uppercase;}


@media screen and (max-width: 768px){
	
.worksList{/*! width: 93%; *//*! margin:auto; */}
.worksList li .txtblock{margin-top: 2rem;font-size: 1.3rem;}
.worksList li .txtblock h3{font-size: 1.6rem;margin-bottom:0.3rem;}
.worksList li .txtblock h4{font-size: 1.2rem;}

}











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


.grid-container .txtblock{font-size: 1.3rem;margin-top:1.2rem;}

.grid-subTxt{font-size: 1.2rem;margin-bottom:0.8rem;display: block;color: #4D76C3;}
.grid-container .grid-title{font-size: 1.6rem;margin-bottom: 1.5rem;font-weight: 500;}



@media screen and (min-width: 769px) {
	

.grid-container{
	display: grid;
	grid-template-columns:repeat(3,1fr);
	gap: 8rem 5%;
}

	

.grid-container.wide{
	gap: 8rem 3px;
}

.grid-container.wide .txtblock{
	box-sizing: border-box;
	padding: 0 2rem;
	font-size: 1.2rem;
}

	
	

	
.grid-container .imgblock{
    overflow: hidden;
}

/* 実際の画像 */
.grid-container .imgblock a img {
	width: 100%;
	height: auto;
	transition: transform 0.6s ease;
	display: block;
	/*! background: #e9e8e7; */
}

/* hover 時に画像内部だけ拡大 */
.grid-container .imgblock:hover a img{transform: scale(1.03);}
.grid-container .imgblock a:hover{opacity: 1;}
.grid-container .no_link .imgblock:hover a img{transform: scale(1);}

	
	
	
	



}




@media screen and (max-width: 768px){
	
.grid-container .txtblock{margin-top:1.5rem;}
.grid-container .grid-title{font-size: 1.6rem;margin-bottom: 1.2rem;}

/*.grid-container .imgblock a{pointer-events: none;}*/

}




.no_link a{pointer-events: none;}
.no_link .btn-txt{display: none;}








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


/*#mid header共通*/


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




.mid_headTitleArea {
  padding: 7.5rem 0;
  background: #F0EEEC;
  text-align: center;
  margin-bottom: 8rem;
}

@media screen and (max-width: 768px){

.mid_headTitleArea {
  padding: 4rem 0;
  margin-bottom: 0;
  background: none;
}


}






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


/*about/


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



#about{}


@media screen and (min-width: 769px) {

#about .section-area{display: flex;justify-content: space-between;/*! flex-direction: row-reverse; */}		
#about .section-area .imgblock{width: 37%;}
#about .section-area .txtblock{width: 50%;}
	
}



@media screen and (max-width: 768px){

#about{}

	
}




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


/* 事業概要テーブル */

#about table {line-height: 2.1;}
#about table th{width: 200px;padding: 0.8rem 0;font-weight: 400;}
#about table td{padding: 0.8rem 0;}



@media screen and (max-width: 768px){


#about table {line-height: 2;width: 100%;}
#about table th{width: 100%;padding: 0.8rem 0 0;display: block;}
#about table td{padding: 0.1rem 0 0.8rem;width: 100%;display: block;}	


}




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

/* 開閉ブロック */

.itemblock{border-bottom: 1px dashed #989898;}
.itemblock .accordion{border-top: 1px dashed #989898;}
.itemblock .accordion_title{
	padding: 3rem 0;
	box-sizing: border-box;
	cursor: pointer;
	transition: .5s;
}

.itemblock .accordion_title h3{position: relative;}
.itemblock .accordion_title h3::after{
	content: "+";
	color:#091E34;
	font-size: 2.8rem;
	font-weight: 300;
	position: absolute;
	right: 1rem;
	top:50%;
	transform:translateY(-50%);
}
.itemblock .accordion_title.open{padding-top: 4rem;}
.itemblock .accordion_title.open h3::after{transform:translateY(-50%) rotate(-45deg);}

.itemblock .accordion .accordion_inner{display: none;padding: 0;box-sizing: border-box;}
.itemblock .accordion_box{padding:0 0 6rem;}
.itemblock .accordion_box p:last-of-type{margin-bottom: 0;}




@media screen and (max-width: 768px){

.itemblock .accordion_title{padding:2.5rem 0;}
.itemblock .accordion_title.open {padding-top: 3rem;}
.itemblock .accordion_box{padding:0 0 4rem;}
.itemblock .accordion_title h3::after{font-size: 2.2rem;}


}







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


/*service/


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



#top #service{padding: 9rem 0 5rem;}



@media screen and (min-width: 769px) {
#service .section-area{display: flex;justify-content: space-between;/*! flex-direction: row-reverse; */}		
#service .section-area .imgblock{width: 37%;}
#service .section-area .txtblock{width: 50%;}
	
#service .support-area{display: flex;justify-content: space-between;/*! max-width: 1200px; *//*! min-width: 1040px; */;/*! margin:auto; */background: #fff;padding: 5rem 1rem;}
#service .support-box{width: 33.333333%;padding:2rem 3rem 1rem;box-sizing: border-box;border-right: 1px dotted #ccc;font-size: 1.4rem;}
#service .support-box:last-of-type{border-right: none;}
	

}



#service .support-area{text-align: center;box-sizing: border-box;}
#service .support-img{margin-bottom: 2rem;}
#service .support-img{margin-bottom: 2rem;}
#service .support-img{margin-bottom: 2rem;}
#service .support-txt{text-align: left;}

#service .support-img.img1 img{height: 86px;}
#service .support-img.img2 img{height: 86px;}
#service .support-img.img3 img{height: 78px;margin-top: 8px;}





@media screen and (max-width: 768px){

#top #service{padding: 5rem 0 4rem;}
#service .section-area .imgblock{/*! margin-bottom: 4rem; */}

#service .support-img.img3 img{margin-top: 0;}


	
}


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


/* 費用について */


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


.title-color{
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1.5;
	color:#fff;
	background: #091E34;
	padding: 2.1rem;
	box-sizing: border-box;
	text-align: center;
}

.pricelist{margin: 1.5rem 0;}

.pricelist-head{
	/*! background: #4C566F; */
	display: flex;
	/*! justify-content: center; */
	align-items: center;
	font-weight: 600;
	font-size: 2rem;
	/*! color: #fff; */
}



.pricelist-txtbox{/*! background: #f0eeec; *//*! padding:3rem 0; */box-sizing: border-box;line-height: 2;}
.pricelist-txt{margin-bottom: 0.5rem;font-weight: 600;font-size: 1.7rem;}



@media screen and (min-width: 769px) {

.pricelist{display: flex;/*! justify-content: space-between; */background: #fff;padding: 4rem 3rem 4rem 8rem;}	
.pricelist-head{width: 28%;}
.pricelist-txtbox{/*! width: ; */}

}



@media screen and (max-width: 768px){


.title-color{
	font-size: 1.8rem;
	padding: 1.7rem 1rem;
}
	


.pricelist{margin-top: 2.5rem;border-bottom: dashed 1px #333;padding-bottom: 2.5rem;}

.pricelist-head{
	/*! padding: 1.5rem 2rem; */
	font-size: 1.7rem;
	justify-content: flex-start;
	margin-bottom: 1rem;
}

.pricelist-txtbox{/*! padding:1.5rem 2rem 2rem; */}
.pricelist-txt{margin-bottom: 0.5rem;font-size: 1.4rem;line-height: 2;}

}




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

/* リストボックス */

@media screen and (min-width: 769px) {

.listBox_pc .innerBlock{display: flex;width: 86%;margin: auto;/*! justify-content: space-between; */}

.listBox_pc{
	background: #fff;
	box-sizing: border-box;
	padding: 5rem 0 4.5rem;
	line-height: 2;
}
	
.listBox_pc .innerBlock ul:first-of-type{flex-basis: 50%;}
	

	

}


.listBox_pc ul li{margin-bottom: 0.8rem;font-weight: 500;}


@media screen and (max-width: 768px){

.listBox_pc{line-height: 1.8;}
.listBox_pc ul li{margin-bottom: 0.9rem;}

	
}






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


/*portfolioページ*/


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


.portfolio .headBlock {margin-top:6rem; }
.portfolio .headBlock p{line-height: 2.2;}

#portfolioBlock ul.nolink a{pointer-events: none;}

#portfolioBlock{padding: 7rem 0 3rem;line-height: 2.2;}

#portfolioBlock .section-area{display:flex;flex-wrap: wrap;justify-content: flex-start;margin:6rem auto 0;}
#portfolioBlock .seciton-item{width: 29.92%;margin-bottom: 5rem;margin-right: 5.12%;}
#portfolioBlock .seciton-item:nth-child(3n){margin-right: 0;}

#portfolioBlock .works-img{background:#eee;}

#portfolioBlock .works-title{font-size: 1.1rem;margin-top: 0.7rem;text-transform: uppercase;font-weight: 500;}
#portfolioBlock .works-text{font-size: 1.2rem;margin-top: 0.7rem;}
#portfolioBlock .works-title span{display: block;margin-bottom: 0.2rem;letter-spacing: 0.05em;font-weight: 400;text-transform: lowercase;}
#portfolioBlock .works-text span{display: block;margin-bottom: 0.3rem;letter-spacing: 0.05em;}



#portfolioBlock .seciton-item.nolink a{pointer-events: none;}
#portfolioBlock .seciton-item a img:hover{opacity:1;}
#portfolioBlock .seciton-item a:hover{opacity:0.8;}
#portfolioBlock .btn-outer{margin-top: 1rem;}








@media screen and (max-width: 768px){

#portfolioBlock {padding: 5rem 0 0;}
#portfolioBlock .section-area{margin:4rem auto 0;}
#portfolioBlock .seciton-item{width: 100%;margin:0 0 4rem;}

#portfolioBlock .btn-outer{margin-top: 4rem;}
	


}










/*------------------------------
worksBlock
------------------------------*/


#worksBlock{padding: 7rem 0 3rem;}
#worksBlock .txt_read{font-size: 1.3rem;line-height: 2.2;}
#worksBlock .section-area{display:flex;flex-wrap: wrap;justify-content: flex-start; margin:6rem auto 0;}
#worksBlock .seciton-item{width: 29.92%;margin-bottom: 5rem;margin-right: 5.12%;}
#worksBlock .seciton-item:nth-child(3n){margin-right: 0;}

#worksBlock .works-img{background:#EAE9E7;}

#worksBlock .works-title{font-size: 1.3rem;margin-top: 0.7rem;}
#worksBlock .works-text{font-size: 1.1rem;margin-top: 0.3rem;}


#worksBlock .seciton-item.nolink a{pointer-events: none;}
#worksBlock .seciton-item a img:hover{opacity:1;}
#worksBlock .seciton-item a:hover{opacity:0.8;}
#worksBlock .btn-outer{margin-top: 1rem;}


.borderImg{border:#DCDCDC 1px solid;box-sizing: border-box;}



@media screen and (max-width: 768px){

#worksBlock {padding: 5rem 0 0;}
#worksBlock .section-area{margin:4rem auto 0;}
#worksBlock .seciton-item{width: 100%;margin:0 0 4rem;}

#worksBlock .btn-outer{margin-top: 4rem;}
	


}










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

worksページ

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





.works main{padding-bottom: 2rem;}


.bgImg{background: #EBEBEB;padding-top: 68%;box-sizing: border-box;position: relative;}
.bgImg img{width: 80%;position: absolute;top:50%;left:50%;transform: translate(-50%,-50%);}





#worksMainBlock .section-area{margin-top: 6rem;line-height: 2.2;}
#worksMainBlock .imgblock li{margin-bottom: 3rem;}

#worksMainBlock .imgblock.flexwrap{display: flex;flex-wrap: wrap;justify-content: space-between;align-self: flex-start;}
#worksMainBlock .imgblock.flexwrap li{width: 48%;margin-bottom: 2rem;}
#worksMainBlock .imgblock.flexwrap li.size_L{width: 100%;background: #EAE9E7;}
#worksMainBlock .imgblock.flexwrap li p{font-size: 1.1rem;line-height: 1.9;margin-top: 0.5rem;}


@media screen and (min-width: 769px) {
	
#worksMainBlock .section-area{display: flex;justify-content: space-between;}	
#worksMainBlock .section-area .imgblock{width: 45%;}
#worksMainBlock .section-area .txtblock{width: 45%;/*! font-size: 1.4rem; */}
	
}




@media screen and (max-width: 768px) {
	
#worksMainBlock .section-area{margin-top: 3rem;}
#worksMainBlock .section-area .imgblock{margin-top: 3rem;}
#worksMainBlock .imgblock.flexwrap.spsize_L li{width: 100%;}

}




#works_item {margin-top: 10rem;}
#works_item .section-area{display: flex;justify-content: space-between;flex-wrap: wrap;margin-top: 6rem;}
#works_item .seciton-item{width: 23%;margin-bottom: 3rem;}
#works_item.imgsoft .seciton-item img{opacity: 0.9;}
#works_item .works-title{margin-top: 0.5rem;font-size: 1.1rem;line-height: 1.9;}



#works_item .section-area.col3{justify-content: flex-start;}
#works_item .col3 .seciton-item{width: 29.92%;margin-bottom: 5rem;margin-right: 5.12%;}
#works_item .col3 .seciton-item:nth-child(3n){margin-right: 0;}
#works_item .col3 .works-title{font-size: 1.1rem;margin-top: 0.7rem;line-height: 2;}
#works_item .col3 .works-text{font-size: 1.1rem;margin-top: 0.7rem;line-height: 2;}




@media screen and (min-width: 769px) {
#works_item.imgsoft .seciton-item{margin-bottom: 4rem;}

}



@media screen and (max-width: 768px) {

#works_item {margin-top: 8rem;}
#works_item .section-area{margin-top: 3rem;}
#works_item .seciton-item{width: 48%;margin-bottom: 2rem;}
#works_item .works-title{margin-top: 0.5rem;font-size: 1rem;}

#works_item .col3 .section-area{margin:4rem auto 0;}
#works_item .col3 .seciton-item{width: 100%;margin:0 0 3rem;}

}






#workslinkbtn{padding: 12rem 0 2rem;/*! background: #eceae5; */}
#workslinkbtn li{border: 1px solid;}	
#workslinkbtn .linkbtn a{
	width:100%;
	padding: 3rem;
	box-sizing: border-box;
	display: block;
	text-align: left;
	background-image: url("../images/btnArrow.svg");
	background-size: auto 9px;
	background-position: right 10px center;
	background-repeat: no-repeat;
	background-color: #fff;
	text-transform: uppercase;
}
#workslinkbtn .linkbtn a span{margin-right: 0.6rem;}



#workslinkbtn{display: none;}	



@media screen and (min-width: 769px) {

#workslinkbtn .section-area{display: flex;justify-content: space-between;}
#workslinkbtn li{width: 29.92%;}	
	
	
}





@media screen and (max-width: 768px){

#workslinkbtn{padding: 4rem 0;}
#workslinkbtn li:not(:last-of-type){margin-bottom: 1rem;}
}



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


/*思索と試作*/


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

/*共通*/

@media screen and (min-width: 769px) {

#article_intro .section-area{display: flex;justify-content: space-between;flex-direction: row-reverse;}		
#article_intro .section-area .imgblock{width: 37%;}
#article_intro .section-area .txtblock{width: 55%;}
	
}


#article_archive{padding: 8rem 0 14rem; margin-top: 8rem;}

.article_archive_titleBlock {
	margin-top: 8rem;
	margin-bottom: 7rem;
	padding: 3rem 0;
	border-top:2px solid #333;
	border-bottom:2px solid #333;
	text-align: center;
	/*! font-family:'Cormorant Garamond', serif; */
	font-weight: 500;
}
.article_archive_number {
  font-size: 2.6rem;
  text-transform: uppercase;
  margin-bottom: 0;
  line-height: 1;
}
.article_archive_mainTitle {
  font-size: 5.6rem;
}
.article_archive_subTitle {
  font-size: 2.2rem;
	margin-bottom: 0;
}


@media screen and (max-width: 768px){

	

#article_archive{padding: 5rem 0 7rem; margin-top: 5rem;}

.article_archive_titleBlock {
	margin-top: 5rem;
	margin-bottom: 3rem;
	padding: 3rem 0;
}
.article_archive_number {
  font-size: 1.6rem;
  margin-bottom: 0.2rem;
}
.article_archive_mainTitle {
  font-size: 3rem;
	line-height: 1.2;
	margin-bottom: 0.5rem;
}
.article_archive_subTitle {
  font-size: 1.3rem;
}
	

}



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


/*味わいのインターフェイス*/


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




#noteBlock{}
#noteBlock .section-area {line-height: 2.2;margin-top: 10rem;}
#noteBlock .section-area .date{font-size: 1.2rem;margin-top: 0.5rem;}
#noteBlock .title_note{line-height: 1.8;font-size: 1.3rem;}

@media screen and (min-width: 769px) {	
#noteBlock .section-area{display: flex;flex-wrap: wrap;justify-content: flex-start;}	
#noteBlock .note_box{width: 29.92%;margin-right: 5.12%; margin-bottom: 5rem;}
#noteBlock .note_box:nth-child(3n){margin-right:0;}

}


@media screen and (max-width: 768px){

#noteBlock{padding: 6rem 0;}
#noteBlock .section-area {margin-top: 3rem;}	
#noteBlock .section-area .note_box{margin-top: 2.5rem;}

}

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


#mid_note{padding: 5rem 0 13rem;background: #FAF9F8;}

#mid_note .section-area{margin-top: 10rem;}
#mid_note .txtBlock{margin-top: 4rem;line-height: 2.2;}
#mid_note .txtBlock p{margin-bottom: 2rem;}
#mid_note .note-date{font-size: 1.2rem;margin-top: 2rem;color:#727272;}
#mid_note .note-text{font-size: 2.2rem;margin-top: 0.5rem;padding-bottom: 2rem;border-bottom: 1px dashed #333;font-weight: 500;}
#mid_note .note-title{font-size: 1.9rem;margin-bottom: 1rem;font-weight: 500;}

@media screen and (min-width: 769px) {
	
#mid_note .wrap{margin:auto;width: 850px;}
	
}

@media screen and (max-width: 768px){
#mid_note .note-text{font-size: 1.9rem;}
#mid_note .note-title{font-size: 1.5rem;}

}




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


/*journalpageページ*/


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




#mid_journal{padding: 10rem 0 13rem;}

#mid_journal .section-area{}
#mid_journal .txtBlock{margin-top: 3rem;line-height: 2.2;}
#mid_journal .txtBlock p{margin-bottom: 2.2rem;}
#mid_journal .journal-date{font-size: 1.4rem;margin-top: 2rem;color:#727272;/*! font-family:'Cormorant Garamond', serif; */}
#mid_journal .journal-text{font-size: 1.8rem;margin-top: 0.5rem;padding-bottom: 2rem;border-bottom: 1px dotted #bbb;font-weight: 500;}


@media screen and (min-width: 769px) {
	
#mid_journal .wrap{margin:auto;width: 800px;}
	
}








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


/*uka*/


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






.ukaImg img{width: 350px;}

.ukaImg {
  position: relative;
  display: block;
  padding-bottom: 60px; /* 3色ボーダーが表示されるスペースを確保 */
}


.ukaImg::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 40%;
  height: 30px; /* ボーダーの高さ */

  /* 背景色と境界線をひとつのグラデーションで描画 */
  /* 白い線（1px分）を色の変わり目に配置しています */
  background: linear-gradient(to right, 
    #333333 0%, 
    #333333 calc(33.3% - 1px), 
    #ffffff calc(33.3% - 1px), /* 1つ目の白い線 */
    #ffffff calc(33.3% + 1px), 
    #9381c1 calc(33.3% + 1px), 
    #9381c1 calc(66.6% - 1px), 
    #ffffff calc(66.6% - 1px), /* 2つ目の白い線 */
    #ffffff calc(66.6% + 1px), 
    #adaeb5 calc(66.6% + 1px), 
    #adaeb5 100%
  );
}

@media screen and (max-width: 768px){

.ukaImg img{width: 220px;}
.ukaImg{padding-bottom: 50px;}
	
	
.ukaImg::after {
  height: 10px; /* ボーダーの高さ */
	
}
	

}





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


/*common_contact/


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


.common_contact{padding: 8rem 0;background: #F0EEEC;}



@media screen and (min-width: 769px) {	
.common_contact .readTxtBlock{width: 840px;margin: auto;}

}




@media screen and (max-width: 768px){

.common_contact{padding: 6rem 0;}

}








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


/*contactページ*/


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






.contactpage #linkbtn_contact{display: none;}




input,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none !important;
  margin: 0;
  padding: 0;
  border: 1px solid #E2E1DF;
  border-radius: 0;
  outline: 0;
  background: none;
}

.form th,
.form td {
  width: 100%;
  display: block;
  border: none;
}

.form th {
  /*! padding-top: 1.5rem; */
  margin: 0;
  font-weight: 500;
}

.form td {
  padding-bottom: 0;
}

.formTable{width: 100%;}



@media screen and (min-width: 769px) {
	
	
#mid_contact .wrap{/*! width: 850px; *//*! margin: auto; */}
	
	

.form {margin:6rem auto 0;}	
.form tr{display: flex;align-items: center;margin-bottom: 3rem;}
.form th{width: 25%;}	
.form td{width: 75%;}
	
.form tr.isMsg{align-items: flex-start;}
.form tr.isMsg th{padding-top: 2rem;}

}






.item-input {
  box-sizing: border-box;
  padding-left: 1rem;
  padding-right: 1rem;
  height: 48px;
  width: 100%;
  background: #fff;
}
.item-select {
  width: 250px;
  padding: 12px 16px;
  font-size: 1.4rem;
  border: 1px solid #E2E1DF;
  border-radius: 0;
  background: #fff;
  appearance: none; /* ブラウザ標準の矢印を非表示 */
  -webkit-appearance: none;
  -moz-appearance: none;
}
.item-textarea {
  box-sizing: border-box;
  width: 100%;
  padding: 1rem;
  height: 216px;
  flex: 1;
  background: #fff;
}

.required {
  margin-left: 2px;
  color: #FF0004;
}





.form-Btn {
	background: #4eaac5;
	color: #fff;
	padding: 2.2rem 2.5rem;
	border-radius: 50px;
	min-width: 250px;
	margin-bottom: 1px;
	display: inline-block;
	text-align: center;
	font-size: 1.6rem;
	background-image: url("../images/btnArrow_wh.svg");
	background-size: auto 13px;
	background-position: right 18px center;
	background-repeat: no-repeat;
	font-weight: 500;
	margin-top: 3rem;
	line-height: 1.6;
	border: none;
}
.form-Btn.back{background-color: #1f64aaab;}
.form-Btn:hover{opacity: 0.85;}




@media screen and (max-width: 768px) {

.form th {
    padding: 2rem 0 0.3rem;
  }

	
	

.form-Btn {
	padding: 1.9rem 2rem;
	min-width: 220px;
	font-size: 1.3rem;
	background-size: auto 11px;
	background-position: right 15px center;
	margin: 2rem auto 0;
	display: block;
}

	
	
}


.form p{
	line-height: 2;
	margin-bottom: 0;
}

/* reCAPTCHAのロゴ非表示CSS */
.grecaptcha-badge {
    visibility: hidden;
}

.form .wpcf7-spinner {
    display: none!important;
}

.form .wpcf7-not-valid-tip {
    font-size: 1.2rem !important;
}







/* --- Grid Base: 共通の土台 --- */
.grid-layout {
  display: grid;
  /* あなたが設定した「味わい」のある余白 */
  gap: 8rem 10%;
  width: 100%;
  /*! margin-bottom: 8rem; */
}

/* --- Pattern: 列数のバリエーション --- */

/* 2列：メインコンテンツや大きな紹介に */
.grid-layout.is-col2 {
  grid-template-columns: repeat(2, 1fr);;
}

/* 3列：アーカイブや記録の並びに */
.grid-layout.is-col3 {
  grid-template-columns: repeat(3, 1fr);gap: 8rem 6%;
}

/* 非対称：雑誌のようなレイアウト（左が広く、右が狭い） */
.grid-layout.is-asymmetry {
  grid-template-columns: 1.6fr 1fr;
  align-items: start;
}




@media (max-width: 768px) {
  /* 基本は1列 */
	.grid-layout,
	.grid-layout.is-col2,
	.grid-layout.is-col2,
	.grid-layout.is-asymmetry{
    grid-template-columns: 1fr;
    gap: 3rem 0;
  }

  /* 【追加】is-sp2 クラスがついている時だけスマホで2列にする */
  .grid-layout.is-sp2 {
    grid-template-columns: repeat(2, 1fr);
    gap: 3rem 4%; /* スマホ2列の時は余白を少し詰めると綺麗 */
  }

}


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

/*マージン*/

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

.mb0{margin-bottom:0 !important;}
.mb03{margin-bottom:0.3rem !important;}
.mb05{margin-bottom:0.5rem !important;}
.mb10{margin-bottom:1rem !important;}
.mb15{margin-bottom:1.5rem !important;}
.mb20{margin-bottom:2rem !important;}
.mb25{margin-bottom:2.5rem !important;}
.mb30{margin-bottom:3rem !important;}
.mb35{margin-bottom:3.5rem !important;}
.mb40{margin-bottom:4rem !important;}
.mb45{margin-bottom:4.5rem !important;}
.mb50{margin-bottom:5rem !important;}
.mb55{margin-bottom:5.5rem !important;}
.mb60{margin-bottom:6rem !important;}
.mb65{margin-bottom:6.5rem !important;}
.mb70{margin-bottom:7rem !important;}
.mb75{margin-bottom:7.5rem !important;}
.mb80{margin-bottom:8rem !important;}
.mb85{margin-bottom:8.5rem !important;}
.mb90{margin-bottom:9rem !important;}
.mb95{margin-bottom:9.5rem !important;}
.mb100{margin-bottom:10rem !important;}
.mb105{margin-bottom:10.5rem !important;}
.mb150{margin-bottom:15rem !important;}
.mb200{margin-bottom:20rem !important;}
.mb300{margin-bottom:30rem !important;}


.mt0{margin-top:0 !important;}
.mt05{margin-top:0.5rem !important;}
.mt10{margin-top:1rem !important;}
.mt15{margin-top:1.5rem !important;}
.mt20{margin-top:2rem !important;}
.mt25{margin-top:2.5rem !important;}
.mt30{margin-top:3rem !important;}
.mt35{margin-top:3.5rem !important;}
.mt40{margin-top:4rem !important;}
.mt45{margin-top:4.5rem !important;}
.mt50{margin-top:5rem !important;}
.mt55{margin-top:5.5rem !important;}
.mt60{margin-top:6rem !important;}
.mt65{margin-top:6.5rem !important;}
.mt70{margin-top:7rem !important;}
.mt75{margin-top:7.5rem !important;}
.mt80{margin-top:8rem !important;}
.mt85{margin-top:8.5rem !important;}
.mt90{margin-top:9rem !important;}
.mt95{margin-top:9.5rem !important;}
.mt100{margin-top:10rem !important;}
.mt105{margin-top:10.5rem !important;}
.mt150{margin-top:15rem !important;}
.mt200{margin-top:20rem !important;}
.mt300{margin-top:30rem !important;}

.mr0{margin-right:0 !important;}
.mr05{margin-right:0.5rem !important;}
.mr10{margin-right:1rem !important;}
.mr15{margin-right:1.5rem !important;}
.mr20{margin-right:2rem !important;}
.mr25{margin-right:2.5rem !important;}
.mr30{margin-right:3rem !important;}
.mr35{margin-right:3.5rem !important;}
.mr40{margin-right:4rem !important;}
.mr45{margin-right:4.5rem !important;}
.mr50{margin-right:5rem !important;}
.mr60{margin-right:6rem !important;}
.mr70{margin-right:7rem !important;}
.mr80{margin-right:8rem !important;}
.mr90{margin-right:9rem !important;}

.pr5{padding-right:5px !important;}
.pr10{padding-right:10px !important;}

@media print, screen and (min-width: 769px) {

.pcmb0{margin-bottom:0 !important;}
.pcmb03{margin-bottom:0.3rem !important;}
.pcmb05{margin-bottom:0.5rem !important;}
.pcmb10{margin-bottom:1rem !important;}
.pcmb15{margin-bottom:1.5rem !important;}
.pcmb20{margin-bottom:2rem !important;}
.pcmb25{margin-bottom:2.5rem !important;}
.pcmb30{margin-bottom:3rem !important;}
.pcmb35{margin-bottom:3.5rem !important;}
.pcmb40{margin-bottom:4rem !important;}
.pcmb45{margin-bottom:4.5rem !important;}
.pcmb50{margin-bottom:5rem !important;}
.pcmb55{margin-bottom:5.5rem !important;}
.pcmb60{margin-bottom:6rem !important;}
.pcmb65{margin-bottom:6.5rem !important;}
.pcmb70{margin-bottom:7rem !important;}
.pcmb75{margin-bottom:7.5rem !important;}
.pcmb80{margin-bottom:8rem !important;}
.pcmb85{margin-bottom:8.5rem !important;}
.pcmb90{margin-bottom:9rem !important;}
.pcmb95{margin-bottom:9.5rem !important;}
.pcmb100{margin-bottom:10rem !important;}
.pcmb105{margin-bottom:10.5rem !important;}
.pcmb200{margin-bottom:20rem !important;}
.pcmb300{margin-bottom:30rem !important;}


.pcmt0{margin-top:0 !important;}
.pcmt05{margin-top:0.5rem !important;}
.pcmt10{margin-top:1rem !important;}
.pcmt15{margin-top:1.5rem !important;}
.pcmt20{margin-top:2rem !important;}
.pcmt25{margin-top:2.5rem !important;}
.pcmt30{margin-top:3rem !important;}
.pcmt35{margin-top:3.5rem !important;}
.pcmt40{margin-top:4rem !important;}
.pcmt45{margin-top:4.5rem !important;}
.pcmt50{margin-top:5rem !important;}
.pcmt55{margin-top:5.5rem !important;}
.pcmt60{margin-top:6rem !important;}
.pcmt65{margin-top:6.5rem !important;}
.pcmt70{margin-top:7rem !important;}
.pcmt75{margin-top:7.5rem !important;}
.pcmt80{margin-top:8rem !important;}
.pcmt85{margin-top:8.5rem !important;}
.pcmt90{margin-top:9rem !important;}
.pcmt95{margin-top:9.5rem !important;}
.pcmt100{margin-top:10rem !important;}
.pcmt105{margin-top:10.5rem !important;}
.pcmt200{margin-top:20rem !important;}
.pcmt300{margin-top:30rem !important;}



.pcmr0{margin-right:0 !important;}
.pcmr05{margin-right:0.5rem !important;}
.pcmr10{margin-right:1rem !important;}
.pcmr15{margin-right:1.5rem !important;}
.pcmr20{margin-right:2rem !important;}
.pcmr25{margin-right:2.5rem !important;}
.pcmr30{margin-right:3rem !important;}
.pcmr35{margin-right:3.5rem !important;}
.pcmr40{margin-right:4rem !important;}
.pcmr45{margin-right:4.5rem !important;}
.pcmr50{margin-right:5rem !important;}
.pcmr60{margin-right:6rem !important;}
.pcmr70{margin-right:7rem !important;}
.pcmr80{margin-right:8rem !important;}
.pcmr90{margin-right:9rem !important;}
.pcmr100{margin-right:10rem !important;}

}



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

/*フォントサイズ*/

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


.txt-center{text-align: center;}
.txt-right{text-align: right;}


@media screen and (max-width: 768px) {
	

.txt-left-sp{text-align: left;}
.txt-center-sp{text-align: center;}
.txt-right-sp{text-align: right;}
	

}




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

/*フォントサイズ*/

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

.strong200{font-weight:300;}
.strong300{font-weight:300;}
.strong400{font-weight:400;}
.strong500{font-weight:500;}
.strong600{font-weight:600;}
.strong700{font-weight:700;}


.txt10{ font-size:1rem !important;}
.txt11{ font-size:1.1rem !important;}
.txt12{ font-size:1.2rem !important;}
.txt13{ font-size:1.3rem !important;}
.txt14{ font-size:1.4rem !important;}
.txt15{ font-size:1.5rem !important;}
.txt16{ font-size:1.6rem !important;}
.txt17{ font-size:1.7rem !important;}
.txt18{ font-size:1.8rem !important;}
.txt19{ font-size:1.9rem !important;}
.txt20{ font-size:2rem !important;}
.txt21{ font-size:2.1rem !important;}
.txt22{ font-size:2.2rem !important;}
.txt23{ font-size:2.3rem !important;}
.txt24{ font-size:2.4rem !important;}
.txt25{ font-size:2.5rem !important;}
.txt26{ font-size:2.6rem !important;}
.txt27{ font-size:2.7rem !important;}
.txt28{ font-size:2.8rem !important;}
.txt29{ font-size:2.9rem !important;}
.txt30{ font-size:3rem !important;}
.txt31{ font-size:3.1rem !important;}
.txt32{ font-size:3.2rem !important;}
.txt33{ font-size:3.3rem !important;}
.txt34{ font-size:3.4rem !important;}
.txt35{ font-size:3.5rem !important;}
.txt36{ font-size:3.6rem !important;}
.txt37{ font-size:3.7rem !important;}
.txt38{ font-size:3.8rem !important;}
.txt39{ font-size:3.9rem !important;}
.txt40{ font-size:4rem !important;}



@media (max-width: 768px) {
  .txt_sp10{ font-size:1rem !important;}
  .txt_sp11{ font-size:1.1rem !important;}
  .txt_sp12{ font-size:1.2rem !important;}
  .txt_sp13{ font-size:1.3rem !important;}
  .txt_sp14{ font-size:1.4rem !important;}
  .txt_sp15{ font-size:1.5rem !important;}
  .txt_sp16{ font-size:1.6rem !important;}
  .txt_sp17{ font-size:1.7rem !important;}
  .txt_sp18{ font-size:1.8rem !important;}
  .txt_sp19{ font-size:1.9rem !important;}
  .txt_sp20{ font-size:2rem !important;}
  .txt_sp21{ font-size:2.1rem !important;}
  .txt_sp22{ font-size:2.2rem !important;}
  .txt_sp23{ font-size:2.3rem !important;}
  .txt_sp24{ font-size:2.4rem !important;}
  .txt_sp25{ font-size:2.5rem !important;}
  .txt_sp26{ font-size:2.6rem !important;}
  .txt_sp27{ font-size:2.7rem !important;}
  .txt_sp28{ font-size:2.8rem !important;}
  .txt_sp29{ font-size:2.9rem !important;}
  .txt_sp30{ font-size:3rem !important;}
  .txt_sp31{ font-size:3.1rem !important;}
  .txt_sp32{ font-size:3.2rem !important;}
  .txt_sp33{ font-size:3.3rem !important;}
  .txt_sp34{ font-size:3.4rem !important;}
  .txt_sp35{ font-size:3.5rem !important;}
  .txt_sp36{ font-size:3.6rem !important;}
  .txt_sp37{ font-size:3.7rem !important;}
  .txt_sp38{ font-size:3.8rem !important;}
  .txt_sp39{ font-size:3.9rem !important;}
  .txt_sp40{ font-size:4rem !important;}
}





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

/*スマホ用マージン*/

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


@media screen and (max-width: 768px) {

.spmb0{margin-bottom:0 !important;}
.spmb05{margin-bottom:0.5rem !important;}
.spmb10{margin-bottom:1rem !important;}
.spmb15{margin-bottom:1.5rem !important;}
.spmb20{margin-bottom:2rem !important;}
.spmb25{margin-bottom:2.5rem !important;}
.spmb30{margin-bottom:3rem !important;}
.spmb35{margin-bottom:3.5rem !important;}
.spmb40{margin-bottom:4rem !important;}
.spmb45{margin-bottom:4.5rem !important;}
.spmb50{margin-bottom:5rem !important;}
.spmb55{margin-bottom:5.5rem !important;}
.spmb60{margin-bottom:6rem !important;}
.spmb65{margin-bottom:6.5rem !important;}
.spmb70{margin-bottom:7rem !important;}
.spmb75{margin-bottom:7.5rem !important;}
.spmb80{margin-bottom:8rem !important;}
.spmb85{margin-bottom:8.5rem !important;}
.spmb90{margin-bottom:9rem !important;}
.spmb95{margin-bottom:9.5rem !important;}
.spmb100{margin-bottom:10rem !important;}
.spmb105{margin-bottom:10.5rem !important;}
.spmb200{margin-bottom:20rem !important;}
.spmb300{margin-bottom:30rem !important;}


.spmt0{margin-top:0 !important;}
.spmt05{margin-top:0.5rem !important;}
.spmt10{margin-top:1rem !important;}
.spmt15{margin-top:1.5rem !important;}
.spmt20{margin-top:2rem !important;}
.spmt25{margin-top:2.5rem !important;}
.spmt30{margin-top:3rem !important;}
.spmt35{margin-top:3.5rem !important;}
.spmt40{margin-top:4rem !important;}
.spmt45{margin-top:4.5rem !important;}
.spmt50{margin-top:5rem !important;}
.spmt55{margin-top:5.5rem !important;}
.spmt60{margin-top:6rem !important;}
.spmt65{margin-top:6.5rem !important;}
.spmt70{margin-top:7rem !important;}
.spmt75{margin-top:7.5rem !important;}
.spmt80{margin-top:8rem !important;}
.spmt85{margin-top:8.5rem !important;}
.spmt90{margin-top:9rem !important;}
.spmt95{margin-top:9.5rem !important;}
.spmt100{margin-top:10rem !important;}
.spmt105{margin-top:10.5rem !important;}
.spmt200{margin-top:20rem !important;}
.spmt300{margin-top:30rem !important;}


}
















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

/*acordion*/

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




.acordionBlock{
    list-style: none;
    width: 100%;
    margin:0 auto;
}

.acordionBlock li{
	margin: 1.7rem 0;
}

.acordionBlock li{
  /*! border: 1px solid #000; */
  background: #F0EDE969;
}


.acordionBtn {
    position: relative;
    cursor: pointer;
    padding: 4rem 3rem;
/*    transition: all .5s ease;*/
    font-weight: 500;
}



.acordionBtn::before,
.acordionBtn::after{
    position: absolute;
    content:'';
    width: 15px;
    height: 1px;
    background-color: #333;
}
.acordionBtn::before{
    top:48%;
    right: 20px;
    transform: rotate(0deg);
}


.acordionBtn::after{    
    top:48%;
    right: 20px;
    transform: rotate(-90deg);
}

.acordionBtn.on::before{
  transform: rotate(45deg);
}

.acordionBtn.on::after{
  transform: rotate(-45deg);
}


.acordion{
    display: none;
    padding: 0 3rem 4rem;
}




@media screen and (max-width: 768px) {
	
.acordionBtn{padding: 2.5rem 2rem 2.3rem;}
	
.acordionBtn::before,
.acordionBtn::after{
    height: 1px;
}
.acordionBtn::before{
    right: 15px;
}

.acordionBtn::after{    
    right: 15px;
}



.acordion{
    display: none;
    padding: 0 2rem 3rem;
}	
	
	
	
}






/* PC幅（1000px）に対し、左右に50pxずつの余白を持たせるイメージで1100pxにする */
@media screen and (min-width: 768px) and (max-width: 1100px) {
  body {
    width: 1400px;
    margin: 0 auto;
    transform-origin: top left;
    /* 画面幅に合わせて1400pxを縮小 */
    transform: scale(calc(100vw / 1400));
    overflow-x: hidden;
  }
}




