@charset "utf-8";
/**************
全ページ共通
**************/
html {
	font-size: 100%;
	scroll-snap-type: y proximity;
	scroll-padding-top: 6rem;
 	scroll-behavior: smooth;
}
@media (max-width: 375px) {
  html {
    font-size: 4.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  html {
    font-size: 1.5238095238vw;
  }
}
@media (min-width: 1050px) {
  html {
    font-size: 100%;
  }
}
body {
	width: 100%;
	font-family:"Zen Old Mincho","Zen Old Mincho bold","ヒラギノ明朝 ProN W4","Hiragino Mincho ProN","游明朝","Yu Mincho",serif;
	margin: 0;
    padding: 0;
	  animation: fadeIn 1s ease 0s 1 normal;
    -webkit-animation: fadeIn 1s ease 0s 1 normal;
	/*スマホで勝手に文字が大きくなる対策*/
	-webkit-text-size-adjust: 100%;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
p{
	letter-spacing:0.0625rem;
}
ul li{
	text-decoration:none;
	list-style:none;
}

img {
	margin: 0;
    padding: 0;
	border: 0;
	text-decoration: none;
	max-width:100%;}
a {
	text-decoration:none;/*文字下の線*/ 
	border:none;
	color:#000000;
	-webkit-transition: 0.2s ease-in-out;  
       -moz-transition: 0.2s ease-in-out;  
         -o-transition: 0.2s ease-in-out;
            transition: 0.2s ease-in-out;  
}
a:hover {
	opacity: 0.6;
	filter: alpha(opacity=60);	
	text-decoration:none;
}
a:hover img{
    opacity:0.6;
    -moz-opacity:0.6;
    filter:alpha(opacity = 60);
}			
/* 画面外にいる状態 */
.fadein {
    opacity : 0.1;
    transform : translate(0, 3.125rem);
    transition : all 500ms;
    }
 
/* 画面内に入った状態 */
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
    }
.mark{
	background:linear-gradient(transparent 60%, #FFEEB7 60%);
}
.wrapper{
	margin: 0;
    padding: 0;
	overflow:hidden;
	}
a.anchor {
    display: block;
    padding-top: 5rem;
    margin-top: -5rem;
	position: absolute;
}
.smp-on {
  /* スマホで表示、PCで非表示 */
  display: none;
}

.smp-off {
  /* スマホで非表示、PCで表示 */
  display: block;
}
.br-sp {
  /* PCで改行しない、スマホで改行 */
    display: none;
}
pre {
	-webkit-white-space: pre-wrap; /* Safari, Chrome */
    -moz-white-space: pre-wrap;    /* Firefox */
    white-space: pre-wrap;         /* CSS標準 */
	-ms-word-wrap: break-word;
	word-wrap: break-word;
}
/*======================================================================================
●共通
========================================================================================*/
/*********************ヘッダー*********************/
header{
	background: #FFF;
}
/*********************上・ロゴ**********************/
.header-warp{
	padding: 0 0 0 0;
}
.header-warp2{
	padding: 0;
}
.header-area{
    background: #fff;
	position: fixed;
    top: 0;
    padding: 0;
    width: 100%;
    z-index: 1000;
}
.header-inner{
    max-width: 1500px;
    width: 90%;/*幅の指定*/
    margin: 0 auto;
	padding:0;
	display: flex;
    justify-content: space-between;
	gap:0 1rem;
	align-items: center;
}
.logo-area{
	margin: 0;/*上マージンを指定する*/
	padding: 0
}
.head-box{
	margin:0;
	background: #FFF;
	top: 0;
	position: absolute;
	border-radius: 0 0 0.625rem 0.625rem ;        /* CSS3草案 */  
    -webkit-border-radius: 0 0 0.625rem 0.625rem ;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 0 0 0.625rem 0.625rem ;   /* Firefox用 */  
}
.head-box p{
	font-size: 1rem;
	font-weight: 700;
	letter-spacing:0.0625rem;
	text-align:center;
	margin: 0;
	padding: 0.5rem  5rem;
}
.logo{
	margin-top: 0.2rem;
}
.logo img{
	width: 12.5rem;
}

.arrow, .arrow-partners {        /* 矢印 */  
    width: 2.645rem;
    position: relative;
    top: 1rem;
    padding-left: 0.875rem;
}

/*********************メイン画像*********************/
.main-img-area{
	width: 100%;
	opacity: 0;
  animation: fadeInMain 3s ease-in-out forwards;
  animation-delay: 0.3s;
	height: 90vh;
	margin-bottom: 2.5rem;
    overflow: hidden;
}
@media screen and (min-width: 1400px) {
.slide-area{
	margin: 0 auto;
}
	}
@keyframes fadeInMain {
  to {
    opacity: 1;
  }
}
.mv-img {
  opacity: 0;
  transform: scale(1.05);
  animation: fadeInImage 3s ease-out forwards; /* ←ここを変更 */
}

@keyframes fadeInImage {
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.swiper-container img {	
	aspect-ratio: auto;
	min-width: 100%;
	min-height: 100%;
	-o-object-fit: cover;
     object-fit: cover; 
	position: relative;
}
.mv-textarea img {	
	aspect-ratio: auto;
	min-width: 100%;
	min-height: 100%;
	-o-object-fit: cover;
     object-fit: cover; 
}
.mv-textarea {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	z-index: 1;
	width: 15.625rem;
}

@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}
.swiper-slide-active .swiper-img,
.swiper-slide-duplicate-active .swiper-img,
.swiper-slide-prev .swiper-img {
  animation: zoomUp 7s linear 0s normal both;
}
.swiper-slide img {
  height: 90vh; /* 古いブラウザ用 */
  height: 90dvh; /* 新しいブラウザ用 */
  width: 100%;
}
.swiper-container {
    max-width: 100%;
	height: 100vh;
	position: relative;
	overflow:hidden;
}
.swiper-slide {
  opacity: 0;
  transition: opacity 1s ease-in-out;
}
.swiper-slide-active {
  opacity: 1 !important;
}
.main-img-area img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (min-width: 1400px) {
.swiper-container {
	height: auto;
}
	}
@media screen and (min-width: 1500px) {
.swiper-container {
	height: auto;
}
	}
@media screen and (min-width: 1600px) {
.swiper-container {
	height: auto;
}
	}
@media screen and (min-width: 1800px) {
.swiper-container {
	height: auto;
}
	}

/*********************ナビゲーション*********************/
/* グローバルナビ */
.globalnavi ul {
    flex-flow: row;
    justify-content: space-around;
}

/* 固定 */
.h-navi {
	width:100%;
	height:4.7rem;
	text-align:center;
	margin:0;
	padding:0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.h-navi ul{
	margin:0;
	padding:0;
	}

.h-navi ul li{
	display: inline-block;
	vertical-align:middle;
	margin:0;
	padding:0 1rem;
	}

.h-navi ul li a{
	font-size:0.75rem;
	font-weight: 700;
	letter-spacing:0.0625rem;
	margin:0;
	padding:1.7rem 0;
	}
.sp-globalnavi{display: none
}
.instagram-icon{
    width: 1.3rem;
    position: relative;
    top: 0.3rem;
}
.border{
    border-bottom: 0.0625rem solid #f0f0f0;
	padding-top: 4.7rem;
	width: 100%;
}
/*********************下・フッター・インフォメーション・マップ*********************/
footer{
	margin: 0;
    padding: 4rem 0 0 0;
	text-align: center;
}
footer .logo{
	margin: 0 auto;
}
/*********************下・ナビゲーション*********************/
#fnavi {
	width:100%;
	text-align:center;
	margin:0 auto;
	padding:0;
}
#fnavi ul{
	margin: 0 auto;
	padding:0;
	width: 100%;
	display: flex;
	justify-content: center;
}
#fnavi ul li{
	display: inline-block;
	vertical-align:middle;
	margin:0;
	padding:0;
	}
#fnavi ul li a{
	display: block;
	font-size:0.75rem;
	font-weight: 500;
	margin:0;
	padding: 4rem 1.125rem 2.1875rem 1.125rem;
	letter-spacing: 0.0625rem
}	
#fnavi ul li a:hover{
    opacity:0.7;
    -moz-opacity:0.7;
    filter:alpha(opacity = 70);
}
footer .instagram-icon {
	idth: 1rem;
    top: 0;
}
.privacy{
	display: block;
	font-size:0.7rem;
	margin:0;
	padding: 0 1rem 1rem 0;
	text-align: right;
}
.address{
	height:5rem;
	line-height:5rem;
	color:#fff;
	background:#1D3994;
	text-align: center;	/*文字を中央に*/
	margin:0;
	font-size:0.8125rem;/*文字の大きさ指定*/
	letter-spacing:0.0625rem;
}
.instagram-text {
  display: none;
}
.instagram-icon {
  display: inline;
}
/******************************---------共通　終---------******************************/ 

/*======================================================================================
●トップページ 
========================================================================================*/
/*********************お知らせ*********************/	
.news-area, .desc-area, .message-area{
    padding:5rem 0 6.25rem 0;
	margin:0 auto;
	max-width:800px;
	width: 100%;
	}
.news-area .news-h{
	text-align: center;
	margin: 0 0 2.5rem 0
}
.news-area .news-h h2{
	color: #5F5E5E;
	font-size:1.875rem;/*文字の大きさ指定*/
	font-weight: 900;
	margin:0;
	letter-spacing:0.1875rem;
}	
.news-area .news-icon{
	margin:0 auto 0.3125rem auto;
	width:2.8125rem;
}
.news-area .news{
	margin: 0 0 1.5625rem 0;
	padding: 0;
}
.news-area .news-list{
	letter-spacing:0.0625rem;
	border-bottom:0.0625rem solid #D9D9D9;
	padding:1.5625rem 0;
	display: flex;
	align-items: center;
}
.news-area .news-list-top{
	border-top:0.0625rem solid #D9D9D9;
}
.news-area .news-date{     /* TOPページ お知らせ日付 */ 
	color: #A3A3A3;
	font-size:0.875rem;
	padding-left:0.625rem;
	width: 18%;
}	
.news-area .news-title{     /* TOPページ お知らせテキスト */ 
	width: 82%;
	font-size:0.875rem;
	line-height: 2em;
	font-weight: 500;
}
.read-more-btn a{      /* くわしく見る */  
	font-size:0.75rem;
	display:block;
	padding:1.25rem;
	letter-spacing: 0.09375rem;
	text-decoration: underline;
	text-align: right;
}
.news-area .read-more-btn:hover{
    opacity:0.7;
    -moz-opacity:0.7;
    filter:alpha(opacity = 70);
}
.heading-29, .heading-30 {     /* TOPページ お知らせタイトル */ 
    display: flex;
    position: relative;
    line-height: 1;
    text-align: center;
    align-items: center;
	margin-bottom: 4em;
	z-index: 0;
}
.heading-30{
	margin-bottom: 2em;	
}
.graphic-icon {
    width: 1rem;
    position: relative;
    top: 0.15rem;
    padding-right: 0.25rem;
}
.pdf-icon{
    width: 1.1rem;
	margin-right: 0.625rem;
	vertical-align: middle;
	position: relative;
	top: -0.1em;
}
/*********************当社について*********************/	
.about-us {    /*当社について 全体*/
    background: #E6EDF2;
	padding: 5rem 0;
}
h2.title-about-us {    /*当社についてタイトル*/
    display: flex;
    flex-direction: column;
    align-items: center;
	gap: 0.7rem 0;
	margin-block-start: 0;
	margin-block-end: 2.625rem;
}
.text-center p{    /*テキスト中央揃え*/
	text-align: center;
	font-size: 0.8125rem;
	line-height: 2em;
}
.work-area {   /*当社について area*/
    display: flex;
	gap: 0 2.625rem;
	max-width: 50rem;
	width: 100%;
	margin: 0 auto;
}
.work-box {   /*支援・代行業務 and 仲介・営業業務 box*/
    max-width: 30rem;
    width: 100%;
	background: #FFF;
	padding-bottom: 1.2rem;
}
.work-title-box, .work-title-box2 {   /*支援・代行業務 and 仲介・営業業務 タイトル*/
    color: #FFF;
    text-align: center;
	letter-spacing: 0.125rem;
	height: 6.625rem;
	display: flex;
    align-items: center;
    justify-content: center;
}
.work-title-box {   /*支援・代行業務 タイトル*/
    background: #566598;
}
.work-title-box2 {   /*仲介・営業業務 タイトル*/
    background: #985668;
}
.work-box p {   /*支援・代行業務 テキスト*/
	font-size: 0.8125rem;
	line-height: 2em;
	width: 80%;
    margin: 1.25rem auto 0 auto;
}
.text-center {
    padding-bottom: 3rem;
}
/*協力企業様*/
.partners {  /*協力企業様 全体*/
    background-image: url(images/top/background-img.jpg);
	padding: 5rem 0;
}
.square-btn{  /*協力企業様 ボタン*/
	background: #002C83;
    color: #FFF;
    font-size: 0.75rem;
    letter-spacing: 0.05rem;
    padding: 1.4375rem 1rem;
	border-radius: 0.625rem;
    -webkit-border-radius: 0.625rem;
    -moz-border-radius: 0.625rem;
    max-width: 12.9375rem;
    text-align: center;
    margin: 0 auto;
	box-shadow: 0.0625rem 0.0625rem 0.0625rem #38393a;
}
/*会社概要*/
.desc{
	margin: 0 0 1.5625rem 0;
	padding: 0;
}
.desc-list{
	letter-spacing:0.0625rem;
	border-bottom:0.0625rem solid #000;
	padding:1.5625rem 0;
	display: flex;
	align-items: center;
}
.desc-list-top{
	border-top:0.0625rem solid #000;
}
.desc .menu{     /* 会社概要 項目 */ 
	font-size:0.875rem;
	padding-left:0.625rem;
	width: 18%;
}	
.menu-title{     /* 会社概要 テキスト */ 
	font-size:0.875rem;
	line-height: 2em;
	font-weight: 500;
}
.menu-title-kana{
	font-size:0.75rem;
}
span.menu-title a {
	font-size:0.875rem;
	line-height: 2em;
	font-weight: 500;
}
/*代表挨拶*/
.message-section {
    display: flex;
	gap: 0 2.625rem;
    max-width: 800px;
    width: 90%;
	margin: 0 auto;
}
.message-text{
	font-size:0.875rem;
	line-height: 2em;
	margin-block-start: 0;
	text-align: justify;
}
img.p-wrap {
 height: 25rem;
}
span.name-s {
    font-size: 0.875rem;
    margin-right: 1.25rem;
    letter-spacing: 0.0625rem;
}
.career-wrap {  /* 代表経歴 */
    max-width: 800px;
    width: 90%;
    margin: 0 auto;
}
p.career {
    color: #002C83;
	margin-top: 2.5rem;
}
.career-wrap li{
    font-size: 0.8125rem;
    margin-right: 1.25rem;
    letter-spacing: 0.0625rem;
	line-height: 2em;
}
.career-wrap ul {
    padding-inline-start: 0;
}
/*地図*/
.map iframe {
    vertical-align: bottom;
}
/*お問い合わせ*/
.about-us-wrap {
    background: #fff;
    width: 80%;
    margin: 0 auto;
    padding: 3rem;
}
.about-us-wrap .text-center {
    padding-bottom: 0;
}
.mail-address {
    text-align: center;
    font-size: 1.875rem;
	letter-spacing: 0.0625rem;
	padding-top: 0.7rem;
}
.mail-address p {
    font-size: 0.8125rem;
	letter-spacing: 0.0625rem;
	padding-top: 1rem;
}

/********************* コンテンツ共通 **********************/
.contents-area{
	width:100%;
	margin:0;
	padding: 0;
}
.ca1{
	background: #FFF;
}
.contents-inner{
	max-width:1100px;
	width: 90%;
	margin:0 auto;
	padding:4.375rem 0 3.75rem 0;
}
.contents-inner-box,.contents-inner-box2,.contents-inner-box3{
	margin:0 0 3.75rem 0;
	padding: 0;
	background: #fff;
	overflow: hidden;
}
.contents-inner-box2{
	padding: 3.125rem 5rem 5rem 5rem ;
}

.contents-text{	
	font-size:1rem;/*文字の大きさ指定*/
	font-weight: 500;
	text-align: justify;
	margin:0;
	padding:0;/*パディングの指定*/
	line-height: 2em;/*行間を指定する*/
	max-width: 31.375rem;
}
.contents-text-wide{	
	font-size:1rem;/*文字の大きさ指定*/
	font-weight: 500;
	text-align: justify;
	margin:0;
	padding:0;/*パディングの指定*/
	line-height: 2em;/*行間を指定する*/
}
.contents-area .no-margintop{
	margin-top:0
}
/*======================================================================================
●下層ページ　共通
========================================================================================*/
.page-title h1, .page-title-news h1 {  /* ページタイトル */
    text-align: center;
	font-size: 1.875rem;
	padding: 3.125rem 0;
	margin: 0 0 1rem 0;
}
.page-title, .page-title-news {
    background: #E6EDF2;
}
/*********************パンくずリスト**********************/
.breadcrumb-list {
	width:100%;
	background: #FFF;
	}
.breadcrumb {
	max-width:1100px;
	width: 90%;
	height:100%;
	font-size:0.8125rem;
	letter-spacing:0.125rem;
    margin:0 auto;
	padding: 0;
	-ms-word-wrap: break-word;
	word-wrap: break-word;
}
.breadcrumb a {
	color:#F6AD3C;
	}	
/* パンくずリスト */
.breadcrumb-list ul{
    list-style: none;
	margin: 0;
	padding: 1rem 0;
	padding-inline-start: 0;
  }
.breadcrumb-list li{
    display: inline;
  }
.breadcrumb-list li a{
    color: inherit;
    text-decoration: none;
  }
.breadcrumb-list li + li:before{
    content: ">";
    margin:0.5rem;
  }
/******************************---------下層ページ　共通　終---------******************************/

/*======================================================================================
●当社についてページ
========================================================================================*/
.work, .work-2{
    padding:3rem 0 6rem 0;
	margin:0 auto;
	max-width:800px;
	width: 100%;
	}
.work-title-1, .work-title-1-g {
    font-size: 0.8125rem;
    letter-spacing: 0.125rem;
	background: #002C83;
    color: #fff;
	border-radius: 3.125rem;
    -webkit-border-radius: 3.125rem;
    -moz-border-radius: 3.125rem;
	padding: 0.2rem 1rem;
	width: 70%;
	margin-bottom: 0.3125rem;
}
.work-title-1-g{
	background: #2F690C;
}
.work-title-2, .work-title-2-g {
    font-size: 1.5625rem;
    letter-spacing: 0.125rem;
    color: #002C83;
}
.work-title-2-g, .work-title-2-g p{
	color: #2F690C;
}
.work-title-2-g p{
	font-size: 1rem;
	margin-block-start: 0;
}
.work-title-2-g a{
	font-size: 0.8125rem;
	margin-block-start: 0;
	border: solid 0.0625rem #707070;
    padding: 0.6rem 0.8rem;
	font-family: sans-serif;
	letter-spacing: 0;
}
.work-wrap, .work-wrap-2 {
    display: flex;
	padding: 1.25rem;
	align-items: baseline;
}
.work-wrap{
	border-bottom: 0.0625rem solid #000;	
}
.work-text {
    letter-spacing: 0.125rem;
	font-size: 0.875rem;
    line-height: 2em;
	width: 80%;
    padding-left: 1rem;
	text-align: justify;
}
.work-title-a {
    width: 80%;
}
.img-work{
	margin: 1.875rem 0;
}
.int {
    font-size: 0.8125rem;
    line-height: 2em;
    width: 80%;
    margin: 1.25rem auto 0 auto;
	text-align: justify;
}
/*======================================================================================
●協力企業様ページ
========================================================================================*/
.category{
	background-color: #2F690C;
	text-align: center;
	font-size: 1.5625rem;
	letter-spacing: 0.125rem;
	color: #FFF;
	border-radius: 3.125rem;
    -webkit-border-radius: 3.125rem;
    -moz-border-radius: 3.125rem;
	padding: 0.5rem 0;
	margin-bottom: 3.125rem;
}
.company-wrap {
    display: inline-flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
	padding-bottom: 1.875rem;
	align-items: center;
}
.company-wrap-design {
    display: flex;
}
.company-wrap a,.company-wrap-design a{
    font-size: 1.3125rem;
    letter-spacing: 0.125rem;
	display: flex;
    align-items: center;
	justify-content: space-between;
}
.company {
	margin-bottom: 1.875rem;
    padding: 1rem 1.2rem;
	width: 43%;
	background: #E6EDF2;
	border-radius: 0.375rem;
    -webkit-border-radius: 0.375rem;
    -moz-border-radius: 0.375rem;
}
.arrow-partners {   /* 矢印 */  
    top: 0;
}
h2.title-about-area {    /*地区タイトル*/
    display: flex;
    flex-direction: column;
    align-items: center;
	gap: 0.7rem 0;
	margin-block-start: 0;
	margin-block-end: 2.625rem;
	padding: 0 0 1.25rem 0;
}


/*********************モーダル**********************/
.modal-open-button {
  padding: 0.625rem 1.25rem;
  color: white;
  text-decoration: none;
  cursor: pointer;
  background-color: #007BFF;
  border: none;
	border-radius: 0.3125rem;
	-webkit-border-radius: 0.3125rem;
	-moz-border-radius: 0.3125rem;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  display: none;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background-color: rgb(0 0 0 / 60%);
  opacity: 0;
  transition: opacity 0.5s, scale 0s 0.5s;
  scale: 0;
  overflow-y: auto;
}

.modal:target {
  opacity: 1;
  transition: opacity 0.5s;
  scale: 1;
}

.close {
  margin: 2rem auto 0 auto; /* 上に余白、中央寄せ */
  color: white;
  background-color: #1D3994;
  padding: 0.5rem 1rem;
  text-align: center;
  text-decoration: none;
	border-radius: 0.3125rem;
	-webkit-border-radius: 0.3125rem;
	-moz-border-radius: 0.3125rem;
  width: fit-content;
  cursor: pointer;
}
a.close {
    font-size: 0.875rem;
	font-family: sans-serif;
}
.modal-wrapper {
  position: relative;
  width: 80%;
  max-width: 500px;
  max-height: 70%;
  padding: 2.5rem;
  margin: 1.875rem auto 0 auto;
  overflow: scroll;
  background-color: #fff;
	border-radius: 0.3125rem;
	-webkit-border-radius: 0.3125rem;
	-moz-border-radius: 0.3125rem;
  position: relative;
}

.modal-content h1 {
  margin: 0;
  font-size: 1.4375rem;
  line-height: 1.2em;
  letter-spacing: 0.125rem;
  margin-bottom: 0.625rem;
	background-color: #E6EDF2;
  padding: 0.375rem 0.9375rem 0.5rem 0.9375rem;
}
.modal-content p {
  line-height: 2em;
  margin-block-start: 0;
  text-align: justify;
  font-size: 0.875rem;
}
.modal-desc{
	margin: 0 0 1.5625rem 0;
	padding: 0;
}
.modal-desc-list{
	letter-spacing:0.0625rem;
	border-bottom:0.0625rem solid #000;
	padding:1.5625rem 0;
	display: flex;
	align-items: baseline;
}
.modal-desc .modal-menu{     /* 会社概要 項目 */ 
	font-size:0.875rem;
	padding-left:0.625rem;
	width: 18%;
}	
.modal-menu-title{     /* 会社概要 テキスト */ 
	font-size:0.875rem;
	line-height: 2em;
	font-weight: 500;
}
span.modal-menu-title a {
	font-size:0.875rem;
	line-height: 2em;
	font-weight: 500;
}
.modal-open {
 overflow-y:hidden
}

/*======================================================================================
●プライバシーポリシーページ
========================================================================================*/
.privacy-heading{
	background-color: #566598;
    font-size: 1.125rem;
    letter-spacing: 0.0625rem;
    color: #FFF;
	border-radius: 3.125rem;
    -webkit-border-radius: 3.125rem;
    -moz-border-radius: 3.125rem;
    padding: 0.3rem 0 0.5rem 1.2rem;
    margin-bottom: 2rem;
}
.privacy-wrap{
	margin-bottom: 3.125rem;
}
.privacy-text, .privacy-lead{
	font-size: 0.875rem;
    text-align: justify;
    margin: 0 0 2.5rem 0;;
    padding: 0;
    line-height: 2em;
}
.topics-privacy{
	font-size: 0.875rem;
    margin: 0;
    line-height: 2em;
    width: 95%;
}
.topics-privacy li:before {
	background-color: #566598;
    content: "";
    width: 0.6875rem;
    height: 0.6875rem;
    display: inline-block;
	border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    position: relative;
    top: -0.0625rem;
    margin-right: 0.625rem;
}
/*======================================================================================
●ブログ（お知らせ）ページ
========================================================================================*/
.ca1-contact {
    background-color: #D3DAE8;
}
.news-page-title h2 {
	margin: 3.125rem 0;
	padding: 0;
	text-align: center;
    font-size: 1.875rem;
	color: #F6AD3C;
  }
.page-title-news h1{
	margin-block-end: 0;
}
.news-blog-area {
	word-wrap: break-word;
    overflow-wrap: break-word;
}
.news-container {
    padding: 1.25rem 0 6.25rem 0;
  }
.news-container2 {
    padding: 3.75rem;
  }
.news-container .news-wrap {
    max-width: 1100px;
	width: 100%;
    padding: 0;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
  }

.news-container .news-wrap .opt-wrap {
    width: 20%;
  }

.news-container .news-wrap .opt-wrap label {
    display: block;
    border-bottom: 0.0625rem #036eb5 dashed;
    font-size: 1rem;
    font-weight: bold;
    color: #036eb5;
    text-align: center;
    -webkit-clip-path: unset;
    position: unset;
    overflow: unset;
    height: unset;
    width: unset;
  }

.news-container .news-wrap .opt-wrap select {
    width: 100%;
    margin: 1.25rem 0;
	padding: 0.3125rem;
  }

.news-container .news-wrap .opt-wrap input#s {
    width: 70%;
    padding: 0.25rem;
    margin: 1.25rem 0;
  }

.news-container .news-wrap .news-blog-list{
    width:76%;
    margin: 0;
  }

.news-container .news{
	margin: 0 0 1.5625rem 0;
	padding: 0;
}
.news-container .news-list{
	letter-spacing:0.0625rem;
	display: flex;
	align-items: center;
	background: #FFFFFF;
	border-radius: 0.625rem;        /* CSS3草案 */  
	-webkit-border-radius: 0.625rem;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 0.625rem;   /* Firefox用 */
	margin: 0 0 1.875rem 0;
}
.news-container .news-list a{
	display: flex;
	align-items: center;
	padding:2.1875rem 1.5625rem;
	width: 100%;
}
.news-container .news-date{
	font-size:0.875rem;
	width: 20%
}	
.news-container .news-title{
	letter-spacing: 0.125rem;
    font-size: 0.875rem;
    line-height: 2em;
    width: 80%;
    padding-left: 1rem;
    text-align: justify;
}

.excerpt_more {
  }
.news-container .news-wrap .p-nation a {
  }
.news-container .news-wrap .p-nation a span {
  }
.contents-inner-box-news{
	margin:0 0 3.75rem 0;
	overflow: hidden;
}

/* 記事投稿ページ */
.news-blog-h {
	font-size:1.75rem;
	font-weight: 900;
	letter-spacing: 0.09375rem;
	margin:0.625rem 0 1.25rem 0;
	padding:0;
}
.news-blog-inner{
	padding: 0.3125rem 0 3.75rem 0;
	}
.news-blog-area .post{
	margin: 0 0 1.875rem 0;
	padding: 0 0 1.875rem 0;
    border-bottom: 0.0625rem solid #BEB8D7;
	}

.news-blog-area .post .blog-title {
	background-color: #566598;
	color: #FFF;
    margin-bottom: 1.2rem;
    text-align: center;
    font-weight: 500;
    font-size: 1.375rem;
    padding: 0.8rem 2rem;
    letter-spacing: 0.125rem;
	border-radius: 3.125rem;
    -webkit-border-radius: 3.125rem;
    -moz-border-radius: 3.125rem;
	-ms-word-wrap: break-word;
	word-wrap: break-word;
	}
.news-blog-area .post .blog-title a{
	text-decoration: none;}

.news-blog-area .post p	{
	font-size: 0.875rem;
    padding-left: 1rem;
	line-height: 2rem;
	text-align:justify;
	letter-spacing:0.125rem;
	margin: 1rem 0;
	-ms-word-wrap: break-word;
	word-wrap: break-word;	
	}

.news-blog-area .post ul li{
	text-decoration: unset;
	list-style: unset;
	line-height: 2rem;
	text-align:justify;
	letter-spacing:0.125rem;
	margin: 1rem 0;
}	
.news-blog-area .post .postinfo	{
	font-size:0.8em;
	text-align: right;
	margin: 0.625rem 0 1.875rem 0;
	padding: 0 0 0.3125rem 0;
	border-bottom: dotted 0.125rem #9F96C0;
	clear: both
	}

.news-blog-area .post p.postinfo	{
	font-size:0.8em;
	text-align: right;
	margin: 0.625rem 0 0.625rem 0;
	padding: 0 0 0.3125rem 0;
	clear: both
	}

.news-blog-area .post .post-date{
	margin: 0;
	padding: 0;
}

.news-blog-area p.postinfo a {
	color: #F6AD3C;
	text-decoration: underline;}
.news-blog-area div.post a {
	text-decoration: underline;
	}	

.news-blog-area p#pagetitle	{
	color: #fff;
	font-size:1.375rem;
	font-weight:bold;
	letter-spacing:0.125rem;
	margin:1.25rem 0;
	padding:0.3125rem 0 0.3125rem 1.125rem;
	background: #F6AD3C;
	border-radius: 0 0.625rem 0 0.625rem;        /* CSS3草案 */  
	-webkit-border-radius: 0 0.625rem 0 0.625rem;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 0 0.625rem 0 0.625rem;   /* Firefox用 */
	}

.news-blog-area p#pagetitle .deco{
	padding: 0.625rem 0 0.625rem 0.625rem;
	display: block;
	}

.news-blog-area .post .tag	{
	text-align:right;
	font-size:0.8em
}
.contents-inner-box-c {
    margin: 0 0 3.75rem 0;
    padding: 3rem;
    background: #fff;
    overflow: hidden;
	border-radius: 3.125rem;
    -webkit-border-radius: 3.125rem;
    -moz-border-radius: 3.125rem;
}
.contents-inner-contact {
    max-width: 1100px;
    width: 90%;
    margin: 0 auto;
    padding: 4.375rem 0 3.75rem 0;
}
/* 記事end */

/* 記事内の画像 */

.news-blog-area .aligncenter	{
	display: block;
	margin-left: auto;
	margin-right: auto}

.news-blog-area .post img{
	border: none;
	height: auto;
	display: block;
	}

.news-blog-area alignleft	{
	float: left;
	margin-right: 1.875rem;
	margin-bottom: 1.875rem}

.news-blog-area .alignright	{
	float: right;
	margin-left: 1.875rem;
	margin-bottom: 1.875rem}

.news-blog-area .wp-caption	{
	max-width: 100%;
	text-align: center;
	}
/* 記事内の画像end */

/* ページリンク */

.news-blog-area .pagelink	{
	width: 100%;
	margin: 0;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}
.news-blog-area .pagelink img{
	width:2.645rem;
}	
.news-blog-area .old-icon,.news-blog-area .new-icon{
	margin: 1.25rem 0;
	line-height: 0;
}
/* ページリンクend */

/* 検索フォーム */
.news-blog-area .screen-reader-text{
	font-size: 0.9em;
	color: #000;
	}
/* 検索フォームend */

/* 続きを読む */
.news-blog-area .excerpt_more {
	color: #F6AD3C;
}
.news-blog-inner .news-btn{
	width: 18.75rem;
	display: block;
	margin:2.5rem auto 1.8rem  auto;
	text-align:center;
	background: #F6AD3C;
	border-radius: 2.0625rem;        /* CSS3草案 */  
    -webkit-border-radius: 2.0625rem;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 2.0625rem;   /* Firefox用 */  
}
.news-blog-inner .news-btn a{
	font-size:1.25rem;
	font-weight:700;
	display:block;
	padding:1.25rem;
    color:#fff;
	letter-spacing: 0.09375rem;
}
.news-blog-inner .news-btn:hover{
    opacity:0.7;
    -moz-opacity:0.7;
    filter:alpha(opacity = 70);
}
.news-blog-area .post .wp-caption-text{
	margin: 0;
	padding: 0.5rem 0.5rem 0.8rem 0.5rem;
}
h2.blog-title a {
    color: #FFF;
}
/*-----------------------------
ギャラリー
------------------------------*/
.news-blog-area .post #gallery-1{
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
}
.news-blog-area .post #gallery-1 .gallery { /** ギャラリーを囲むボックス **/
	width: 100%;
	margin-bottom: 20px !important;
	overflow: hidden;
}
.news-blog-area .post #gallery-1 .gallery br {
	display: none;/** 自動で挿入される clearfix の余白解除 **/
} 
.news-blog-area .post #gallery-1 .gallery-item { /** 画像共通のスタイル **/
	float: none;
	margin-bottom: 0 !important;
}
.news-blog-area .post #gallery-1 .gallery-icon { /** 画像を囲む dt のスタイル **/
	text-align: center;
}
.news-blog-area .post #gallery-1 .gallery-icon img {
	width: 100%;
	height: auto;
	margin-bottom: 0.5rem !important;
}
.news-blog-area.post #gallery-1 .gallery-caption { /** キャプション **/
	color: #222;
	font-size: 0.9rem;
	margin: 0 0 1.5rem;
	padding: 0.4rem 0.5rem 0.8rem 0;
	text-align:left;
}
.news-blog-area .post #gallery-1.gallery-columns-1 .gallery-item { /** カラムなし **/
	width: 100%;
	margin-right: 0;
}
.news-blog-area .post #gallery-1.gallery-columns-2 .gallery-item { /** 2カラム **/
	width: 48%;
	margin: 0 1%;
}
.news-blog-area .post #gallery-1.gallery-columns-3 .gallery-item { /** 3カラム **/
	width: 31.33333%;
	margin: 0 1%;
}
.news-blog-area .post #gallery-1.gallery-columns-4 .gallery-item { /** 4カラム **/
	width: 23%;
	margin: 0 1%;
}
.news-blog-area .post #gallery-1.allery-columns-5 .gallery-item { /** 5カラム **/
	width: 18%;
	margin: 0 1%;
}
@media screen and (max-width: 767px) {	/* 767px以下用の記述 */
	.news-blog-area .post #gallery-1.gallery-columns-2 .gallery-item {
		width: 100%;
		margin: 0
	}
	.news-blog-area .post #gallery-1.gallery-columns-3 .gallery-item, .news-blog-area .post #gallery-1.gallery-columns-4 .gallery-item {
		width: 48%;
		margin: 0 1%;
	}
	.news-blog-area .post #gallery-1.gallery-columns-5 .gallery-item {
		width: 31.33333%;
		margin: 0 1%;
	}
}
/*======================================================================================
●検索結果ページ
========================================================================================*/
.search-result{}
.search-result p{
	margin: 0 0 1rem 0;
	font-size: 1.1rem;
	font-weight: 500;
}
/*======================================================================================
●ページトップへ戻る
========================================================================================*/
#page_top{
  width: 3.125rem;
  height: 3.125rem;
  position: fixed;
  right: 0.625rem;
  bottom: 1.875rem;
  background: #1D3994;
  opacity: 0.8;
	border-radius: 50%;        /* CSS3草案 */
	-webkit-border-radius: 50%;    /* Safari,Google Chrome用 */
	-moz-border-radius: 50%;   /* Firefox用 */
}
#page_top a{
  position: relative;
  display: block;
  width: 3.125rem;
  height: 3.125rem;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f062';
  font-size: 1.5625rem;
  color: #fff;
  position: absolute;
  width: 1.5625rem;
  height: 1.5625rem;
  top: -0.3125rem;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
.error{
	clear:both;
	width:100%;
	text-align:center;}