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

/* ************************************************************* */
/*          COMMON Rayout 
/* ************************************************************* */

body {
	margin: 0;
	padding: 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	color: #333;
	font-size: 95%;
	line-height: 1.7em;
	letter-spacing: 0.05em;
	text-align: justify;
	background-color: #241c8b;
	animation: fade_In 2s ease 0s 1 normal;
    -webkit-animation: fade_In 2s ease 0s 1 normal;
}

h1,h2,h3,h4,h5 { font-weight: 700; }

ul,li { list-style: none; }

img { max-width: 100%; }

a:hover { cursor: pointer; }


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

@-webkit-keyframes fadeI_n {
    0% {opacity: 0}
    100% {opacity: 1}
}

a { text-decoration: none; }
a:hover { cursor: pointer;}


/* ************************************************************* */
/*          HEADER  RAYOUT
/* ************************************************************* */

.head {
	width: 100%;
	height: 100px;
	margin: 0;
	padding: 0;
	top: 0;
	display: block;
	position: fixed;
    background-color: #FFF;
	z-index: 999999;
}

.head .h_logo {
	width: 230px;
	margin: 20px 0 0 40px;
	float: left;
}

.head .logo a {
	width: 100%;
	padding: 0;
	margin: 0;
	display: block;
}

.head .bar_block {
	display: block;
	margin: 0;
	padding: 0;
	float: right;
}

.head .bar_block .btn {
	width: 100px;
	height: 100px;
	margin: 0;
	padding: 0;
	float: left;
}

.head .bar_block .btn a {
	width: 100%;
	height: 50px;
	margin: 0;
	padding: 50px 0 0;
	display: block;
	background-color: #241c8b;
	color: #FFF;
    text-align: center;
	font-weight: 700;
	line-height: 30px;
	font-size: 90%;
	transition: ease 0.5s all;
	background-image: url("../images/common/ico_mail_wh.svg");
	background-repeat: no-repeat;
	background-position: center top 15px;
	background-size: 30px;
}

.head .bar_block .btn a:hover {
	background-color: rgba(36,28,139,0.15);
	color: #3B3B3B;
	background-image: url("../images/common/ico_mail_gr.svg");
}


/* ************************************************************* */
/*          SERCH BOX  RAYOUT
/* ************************************************************* */

.head .search_box {
	float: right;
	width: 200px;
	margin: 0 70px 0 0;
	display: block;
}

section.search_box {
    max-width:300px;
    border:none;
    padding-top:0;
    padding-right:20px;
    padding-bottom:5px;
    padding-left:20px;
	top: 10px;
	right: 70px;
	position: absolute;
	display: block;
}


/** 外枠に色を付けて角丸にする */
.search_box .gsc-control-cse {
	width: 100%;
	height: 30px!important;
    margin:0px!important;
    padding:0px!important;
    border:none!important;
    border-radius:20px;
    -webkit-border-radius:20px;
    -moz-border-radius:20px;
}
 
/** 外枠内側のマージンを0にする */
.search_box .gsc-search-box { 
	margin:0px!important;
	position: relative;
}
  
/** キーワード入力部分のボーダーを消し、角丸にする */
.search_box .gsc-input-box {
	margin-top: -3px!important;
    border:none!important;
    border-radius:20px!important;
    -webkit-border-radius:20px!important;
    -moz-border-radius:20px!important;
	background-color: transparent;
}
 
 /** キーワード入力部分の左側に20ピクセル余白を入れる */
.search_box .gsib_a { margin: -25px 0 5px 0!important; padding-left:20px!important; }
.search_box .gsib_b { display: none!important; }
  
/** 検索ボタンを無色透明にし、線を消す */
.search_box .gsc-search-button-v2 {
    margin:0px!important;
    padding-top:2px!important;
    padding-bottom:2px!important;
    padding-right:14px!important;
    padding-left:14px!important;
    background-color:transparent!important;
    color:#4990c8!important;
    border-top-style:none!important;
    border-right-style:none!important;
    border-bottom-style:none!important;
    border-left-style:none!important;
    cursor:pointer;
}
 
/** 検索ボタンのアイコンの色と大きさを設定 */
.search_box .gsc-search-button-v2 svg {
    fill:#00a0e9!important;
    width:13px;
    height:13px;
}
 
/** placeholderの色設定 */
.search_box input:placeholder-shown {    color:#bababa;}
 
/* Google Chrome, Safari, Opera 15+, Android, iOS */
.search_box input::-webkit-input-placeholder {    color:#bababa;}
 
/* Firefox 18- */
.search_box input:-moz-placeholder {    color:#bababa;opacity:1;}
 
/* Firefox 19+ */
.search_box input::-moz-placeholder {   color:#bababa;opacity:1;}
 
/* IE 10+ */
.search_box input:-ms-input-placeholder {   color:#bababa!important;}

/* ************************************************************* */
/*          common  RAYOUT
/* ************************************************************* */

.cont_wrap {
    width: 100%;
    max-width: 1860px;
    margin: 0 auto;
    padding: 0;
    background-color: #FFF;
    display: flex;
}

h2.ttl_background4 {
  font-weight: bold;
  padding:50px;
  background-image: linear-gradient(45deg, #fff 0 117px, #241c8b 117px);
  -webkit-background-clip: text;
  color: transparent;
  position: relative;
  font-size: 18px;
  letter-spacing: 0.3em;
}

h2.ttl_background4 span {
  font-size: 48px;
  letter-spacing: 0;
}

h2.ttl_background4:before {
  position: absolute;
  top: 0;
  left: 0;
  width:150px;
  height: 150px;
  background: linear-gradient(45deg, #241c8b 50%, #fff 0 50%);
  content: '';
  z-index: -1;
}



/* ************************************************************* */
/*          CONTENT  RAYOUT
/* ************************************************************* */
.content {
	width: 100%;
	min-height: 60vh;
	margin: 100px 0 0;
	padding: 0;
	float: left;
	background-color: #FFF;
	z-index: 999;
}

.content .wrapper {
	width: 100%;
	max-width: 1920px;
	margin: 0 auto;
	padding: 0;
}

.content_inner {
    width: 90%;
    max-width: 1000px;
    margin: 0 auto;
}

.content_title {
	width: 100%;
	margin: 100px 0 0;
	padding: 0;
	float: left;
}

.content_title.nomain {
	margin: 0;
}

 .content_title h1 {
    width: 100%;
    max-width: 1860px;
    margin: 0 auto;
    padding: 0;
}

 .content_title h1 p {
	font-size: 18px;
    width: auto;
    margin: 0 0 0 80px;
    padding: 10px 2em;
    background-color: #FFF;
    float: left;
}

 .content_title h1 p span {
	font-size: 50px;
    color: #ed1c24;
    font-style: italic;
}

/* **** MAIN VISUAL **** */
.main {
    width: 100%;
    height: 400px;
    margin: 0;
    padding: 0;
    float: left;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}


/* **** PANKUZU LIST **** */

.panlist {
    top: 100px;
    display: flex;
    width: 100%;
    margin: 100px 0 0;
    padding: 0;
    background-color: #FFF;
    float: left;
}

.panlist .cont_wrap {
    width: 100%;
    max-width: 1000px;
    margin: 1em auto;
}

.panlist .cont_wrap a {
    color: #241c8b;
    text-decoration: underline;
    margin-left: 20px;
}


/* **** READ MORE BUTTON **** */

.more_btn {
	width: 100%;
	margin: 50px 0;
	display: flex;
	float: left;
	text-align: center;
}

.more_btn a {
	width: 250px;
	margin: 0 auto;
	text-align: center;
    line-height: 50px;
    background-color: #241c8b;
    border-radius: 25px;
    color: #FFF;
    background-image: url("../images/common/arr_more_w.png");
    background-repeat: no-repeat;
    background-position: center right 20px;
    transition: ease 0.5s all;
    border: #241c8b 1px solid;
}

.more_btn a:hover {
    background-color: #FFF;
    color: #241c8b;
    background-image: url("../images/common/arr_more_nv.png");
    border: #241c8b 1px solid;
}


/* ************************************************************* */
/*          FOOTER  RAYOUT
/* ************************************************************* */


.foot {
	width: 100%;
    min-height: 80vh;
	margin: 0;
	padding: 0;
	float: left;
    background-image: url("../images/common/foot_img.webp");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.foot .filtter {
    width: 100%;
    height: 100%;
    min-height: 80vh;
    float: left;
    margin: 0;
    padding: 0;
    background: linear-gradient(to right, rgba(36,28,139,0.70) 50%, rgba(0,2,63,0.70));
}

.foot .bar_area {
	width: 100%;
	margin: 0;
	padding: 0;
	float: left;
	background-position: center;
	background-size: cover;
}

.foot .bar_area h2 {
	text-align: center;
    margin: 100px 10% 50px;
    color: #FFF;
    font-size: 18px;
    font-weight: 400;
}

.foot .bar_area h2 span {
	font-family: "Noto Serif JP", serif;
    font-style: italic;
    font-size: 38px;
}

.foot .bar_area .message {
	width: 90%;
	margin: 0 5%;
	padding: 0;
	float: left;
	text-align: center;
    color: #FFF;
}

.foot .bar_area .inner {
	width: 90%;
	max-width: 1880px;
	margin: 0 auto;
}

.foot .bar_area .glid {
	width: 50%;
	margin: 0;
	padding: 0;
	float: left;
	display: flex;
}

.foot .bar_area .glid .telbox {
	display: block;
	width: 90%;
	height: 150px;
	margin: 100px 10% 0 0;
	text-align: center;
	color: #FFF;
	float: left;
	border: #FFF 1px solid;
	box-sizing: border-box;
	background-image: url("../images/common/ico_tel.svg");
	background-repeat: no-repeat;
	background-position: center left 40px;
    background-size: 57px;
    font-size: 20px;
    font-weight: bold;
}

.foot .bar_area .glid .telbox .cover {
    margin: 25px 0;
    line-height: 40px;
}

.foot .bar_area .glid .telbox .cover span {
    font-size: 3vw;
}

.foot .bar_area .glid a {
	display: block;
	width: 90%;
	height: 150px;
	margin: 100px 10% 0 0;
	text-align: center;
	transition: ease 0.5s all;
	color: #241c8b;
    font-size: 20px;
    font-weight: 700;
	float: left;
	border: #FFF 1px solid;
	box-sizing: border-box;
    background-color: #FFF;
	background-repeat: no-repeat;
	background-image: url("../images/common/ico_mail_nv.svg");
	background-position: center left 40px;
	background-size: 50px;
}

.foot .bar_area .glid a:hover {
	color: #FFF;
    background-color: #241c8b;
	background-image: url("../images/common/ico_mail_wh.svg");
}

.foot .bar_area .glid a .cover {
	width: 100%;
	padding: 30px 0;
	font-size: 20px;
    line-height: 40px;
	background-image: url("../images/common/arr_nv.png");
    background-size: 30px;
	background-position: center right 40px;
	background-repeat: no-repeat;
    transition: ease 0.5s all;
}

.foot .bar_area .glid a:hover .cover {
	background-image: url("../images/common/arr_large.png");
}

.foot .bar_area .glid a .cover span {
	font-size: 3vw;
}

.foot .bar_area ul {
	width: 100%;
    margin: 0;
    padding: 0;
    float: left;
    color: #FFF;
    text-align: center;
}

.foot .bar_area ul li {
    margin: 5px 0;
}

.foot .bar_area ul li a {
    color: #FFF;
    padding: 5px 1em;
    border-bottom: 0px solid #FFF;
    transition: ease 0.3s all;
}

.foot .bar_area ul li a:hover {
    border-bottom: 1px solid #FFF;
}

.foot .bar_area ul h2 {
    margin:50px 0 1em;
    padding: 0;
    font-size: 20px;
}

.foot .copy {
	width: 100%;
	margin: 50px 0 0;
	padding: 1em 0;
	float: left;
	font-size: 14px;
	color: #FFF;
	text-align: center;
    line-height: 1.3em;
}

/****************************************************
/*               page-top
*****************************************************/
.pagetop {
	position: fixed;
	bottom: 70px;
	right: 25px;
	z-index: 99999;
	display: block;
}

.pagetop a { 
	display: block;
	width: 50px;
	height: 50px;
    padding: 15px 0 0;
    border-radius: 50%;
    border: #FFF 2px solid;
    box-sizing: border-box;
	transition: ease 0.5s all;
    background-color: #241c8b;
    color: #FFF;
    font-size: 12px;
    line-height: 1em;
    text-align: center;
    background-image: url("../images/common/arr_up_w.png");
    background-repeat: no-repeat;
    background-position: center top 5px;
}

.pagetop a:hover { 
	cursor: pointer;
    border: #241c8b 2px solid;
    background-color: #FFF;
    color: #241c8b;
    background-image: url("../images/common/arr_up_nv.png");
}

/* ***********  PAGE NAVI  LAYOUT  ************** */

.pagenav {
	width: 100%;
	margin: 50px 0;
	padding: 0;
	text-align: center;
	display: flex;
}

.pagenav .wp-pagenavi {
	width: auto;
	margin: 0 auto;
	display: inline-block;
}

.pagenav span {
	width: 2.3em;
	height: 2.3em;
	text-align: center;
	line-height: 2.3em;
	float: left;
	margin: 0 10px 0 0 0;
}

.pagenav a {
	width: 2.3em;
	height: 2.3em;
	line-height: 2.3em;
	text-decoration: none;
	color: #000;
	text-align: center;
	display: block;
	float: left;
}

.pagenav a.first,
.pagenav a.last { width: 4em; }

.pagenav a:hover { opacity: 0.7; }
.pagenav.column a {	background-color: #FFF;border: #07328f 1px solid;box-sizing: border-box; }
.pagenav .wp-pagenavi { width: auto;margin: 0 auto;text-align: center; }
.pagenav .wp-pagenavi .pages { border: none;font-style: italic;display: none; }
.pagenav .wp-pagenavi .pages:before { content: "Page - "; }
.pagenav .wp-pagenavi .current { background-color: #07328f;color: #FFF;font-weight: 700;margin: 0 10px 0 0 0; }

/* **************************************************************** */
/*  RESPONSIVE  RAYOUT  MAX-WIDTH 1200px */
/* **************************************************************** */

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

.foot .bar_area .glid .telbox {
	background-position: center left 3vw;
    background-size: 4vw;
}

.foot .bar_area .glid a {
	background-position: center left 2.5vw;
	background-size: 4vw;
}

}

/* **************************************************************** */
/*  RESPONSIVE  RAYOUT  MAX-WIDTH 1100px */
/* **************************************************************** */

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

body { color: #000; }

.head .bar_block {
	display: none;
}

h2.ttl_background4 {
  background-image: linear-gradient(45deg, rgba(255,255,255,1.00) 0 117px, #241c8b 117px);
}

h2.ttl_background4:before {
  background: linear-gradient(45deg, #241c8b 50%, rgba(255,255,255,0.00) 0 50%);
}

}

/* **************************************************************** */
/*  RESPONSIVE  RAYOUT  MAX-WIDTH 1000px */
/* **************************************************************** */

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

.foot .bar_area .glid .telbox,
.foot .bar_area .glid a {
	height: 100px;
    font-size: 16px;
	background-size: 30px;
}

.foot .bar_area .glid .telbox .cover {
    margin: 15px 0;
    line-height: 30px;
}

.foot .bar_area .glid a .cover {
    padding: 15px 0;
	background-position: center right 20px;
    background-size: 20px;
    font-size: 16px;
    line-height: 30px;
}



}

/* **************************************************************** */
/*  RESPONSIVE  RAYOUT  MAX-WIDTH 680px */
/* **************************************************************** */

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

.head { height: 80px; }
.head .h_logo {	width: 180px; }
.panlist { top: 80px;margin: 80px 0 0; }

.content_title h1 p span { font-size: 30px; }
.content_title h1 p { font-size: 16px; }

.foot .bar_area .glid {	width: 100%; }
.foot .bar_area .glid .telbox {	width: 80%;margin: 30px 10% 0; }
.foot .bar_area .glid .telbox .cover span { font-size: 24px; }
.foot .bar_area .glid a {
	display: block;
	width: 80%;
	margin: 30px 10% 0;
}

}

/* **************************************************************** */
/*  RESPONSIVE  RAYOUT  MAX-WIDTH 580px */
/* **************************************************************** */

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

.content_inner { width: 100%;margin: 0; }

h2.ttl_background4 {
  padding:30px;
  background-image: linear-gradient(45deg, rgba(255,255,255,1.00) 0 80px, #241c8b 80px);
  font-size: 16px;
}

h2.ttl_background4 span {
  font-size: 24px;
}

h2.ttl_background4:before {
  width:100px;
  height: 100px;
  background: linear-gradient(45deg, #241c8b 50%, rgba(255,255,255,0.00) 0 50%);
}

}


/* **************************************************************** */
/*  RESPONSIVE  RAYOUT  MAX-WIDTH 480px */
/* **************************************************************** */

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

 .content_title h1 p { margin: 0 0 0 30px;padding: 10px 1em; }

}