@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@500;700;900&family=Noto+Sans+JP:wght@500;700&display=swap');

/* ----------------------------------------------------------------------------------------------------
*  reset
* --------------------------------------------------------------------------------------------------*/
/*====================================
RESET
======================================*/
html{overflow-y: scroll;}
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}
blockquote, q {
    quotes:none;
}
h1, h2, h3, h4, h5, h6, p {margin:0; font-weight:700 !important; display:block; font-size: 100%;}
ul,li {list-style:none; padding:0;margin:0;}
dl,dt,dd {padding:0; margin:0;}
table,tr,td {border:0;padding: 0 ; margin:0;}
table {
    border-collapse:collapse;
    border-spacing:0;
}
a {
  text-decoration:none;
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
a:focus {
  outline:none;
  cursor: pointer;
}
a:hover {cursor: pointer;}

input, textarea, select {
    vertical-align:middle;
}
button{
     background-color: transparent;
        border: none;
        cursor: pointer;
        outline: none;
        padding: 0;
        appearance: none;
}

img {vertical-align:bottom; border:0; padding:0; margin:0;line-height:0; }
div {margin:0;padding:0;}

caption, th{
    font-weight: normal;
}


input,select,button,textarea{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
	border: none;
	border-radius: 0;
	padding: 0;
	font-family:inherit;font-size:inherit;font-weight:inherit;
}
select::-ms-expand {
    display: none;
}
*,*:after,*:before{
	box-sizing: border-box;
}



/* ----------------------------------------------------------------------------------------------------
*  基本
* --------------------------------------------------------------------------------------------------*/
html,body{
	height:100%;
	width:100%;
}
html{
	font-size:62.5%;
    overflow-y: scroll;
}
body, h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, th, td, img, form {
	text-align: left;
}
/*ul{letter-spacing: -0.4em;}
.android ul{letter-spacing: -1em;}
ul li{letter-spacing: normal;}
*/

body a {
	text-decoration:none;
	color:inherit;
}
body{
	-webkit-text-size-adjust: 100%;
	width: 100%;
	font-size: 1.6rem;
	line-height: 1.75;
	font-family: "游ゴシック","游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
	color: #333;
	font-feature-settings: "palt" 1;
	font-weight: 700;
	background: #fff;
	word-wrap: break-word;
	padding-top: 150px;
}
.ie body{
	font-family:  "メイリオ", Meiryo, sans-serif;
}
.font_noto{
	font-family: 'Noto Sans JP', sans-serif;
}
.en{
    font-family: 'Roboto', sans-serif;
}
p{
}

img{
		width:100%;
		height:auto;
	}
@media screen and (min-width: 769px) {
	html,body{
	}
	body{
	}
	main{
		margin: 0 auto;
	}
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
	body{
		padding-top: 50px;    
    }
}
@media screen and (max-width: 768px) {
	html{-webkit-overflow-scrolling: touch;}
	body{
/*		font-size: 16px;*/
		line-height: 1.5;
		padding-top: 50px;
		letter-spacing: 0.05em;
	}

}



a, a img, .fade, .pull_btn{
	transition: 0.3s ease-in-out;
	-webkit-transition: 0.3s ease-in-out;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

a:hover, a:hover img, .fade:hover, .fade:hover img{
	opacity: 0.6;
}

table{width: 100%;}

sup{
  vertical-align: baseline;
  position: relative;
  top: -1ex;
  font-size:0.6em;
}

sub{
  vertical-align: baseline;
  position: relative;
  top: 0ex;
  font-size:0.6em;
}

/*--読み込み時にtransitionが動作する問題--*/
.preload * {
-webkit-transition: none !important;
-moz-transition: none !important;
-ms-transition: none !important;
-o-transition: none !important;
transition: none !important;
}

/* ----------------------------------------------------------------------------------------------------
*  box
* --------------------------------------------------------------------------------------------------*/
.wrap0, .wrap{
	width: 100%;
	margin: 0 auto;
	position: relative;
}

@media screen and (min-width: 769px) {
	.sp{display: none!important;}
	.wrap0{
		max-width: 1220px;
		padding: 0 10px;
	}
	.wrap{
		max-width: 1000px;
		padding: 0 10px;
	}
}

@media screen and (max-width: 768px) {
	.pc{
		display: none!important;
	}
	body{
		min-width: 100%;
	}
	main{
		width: 100%;
		overflow: hidden;
	}
	.wrap, .wrap0, .wrap1, .wrap2{
		width: 94.6vw;
	}

	.sp100w{
		width: 100vw;
		margin-left: -10px;
	}
}





/* ----------------------------------------------------------------------------------------------------
*  汎用
* --------------------------------------------------------------------------------------------------*/


/* ------------------------------
    clearfix
------------------------------ */
.cf:after{
  content: ".";
  display: block;
  height: 0;
  font-size:0;
  clear: both;
  visibility:hidden;
}

.cf {display: inline-block;}

/* Hides from IE Mac */
* html .cf {height: 1%;}
.cf {display:block;}
/* End Hack */

/* ------------------------------
   float
------------------------------ */
.aligncenter{
    display:block;
    margin:0 auto;
}
.alignright{
	float:right;
}
.alignleft{
	float:left;
}
/* ------------------------------
   flex
------------------------------ */
.flex{
    display:flex;
    flex-wrap: nowrap;
    justify-content:space-between;
}
.flex_wrap{
    flex-wrap: wrap;
}

.jc_start{
    justify-content:flex-start!important;
}
.jc_end{
    justify-content:flex-end!important;
}
.jc_center{
    justify-content:center!important;
}
.item_center{
    align-items: center;
}
.item_end{
	align-items: flex-end;
}
.flex_prev{
	flex-flow: row-reverse;
}
@media screen and (min-width: 769px) {
	.flex_pc{
	    display:flex;
    	flex-wrap: nowrap;
    	justify-content:space-between;
	}

}
@media screen and (max-width: 768px) {
	.flex_sp{
	    display:flex;
    	flex-wrap: wrap;
    	justify-content:space-between;
	}
}

/* ------------------------------
   fitimage
------------------------------ */
.fitImg {
object-fit: cover;
font-family: 'object-fit: cover;';
width:100%;
height: 100%;
}

/* ------------------------------
   text
------------------------------ */
.taC{text-align: center!important;}
.taR{text-align: right!important;}
.taL{text-align: left!important;}

.nowrap{
	display: inline-block;
	text-indent: 0;
}
.bold{font-weight: 700;}

.txt_gr{
	color: #48764c;
}

/* ------------------------------
   見出し-pagettl
------------------------------ */
.pttl{
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1.4;
	padding: 0 20px;
}

.pttl .ttl{
max-width: 1000px;
		width: 100%;
		    margin: 0 auto;
    text-align: start;
    font-size: 4rem;
    padding: 0 0 40px;
    font-weight: 500;
    color: #504946;
    border-bottom: 1px solid #003876;
    margin-bottom: 40px;
	font-family: 'Noto Sans JP', sans-serif;
}
.pttl .ttl .small{
	font-size:3rem;
}
.pttl .ttl .large{
	font-size:4.5rem;
}
@media screen and (min-width: 769px) {
	.pttl .ttl{
		
	}
}
@media screen and (max-width: 768px) {
	.pttl{
		
	}

	.pttl .ttl{
		font-size: 3rem;
		margin-bottom: 60px;
	}
	.pttl .ttl .small{
		font-size: 2.2rem;
	}
	.pttl .ttl .large{
		font-size: 3.3rem;
	}
}

/* ------------------------------
   見出し
------------------------------ */
.ttl1{
	text-align: center;
	line-height: 1.5;
	font-size: 2.8rem;
	padding-bottom: 0.5em;
	margin-bottom: 40px;
	position: relative;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: bold;
}
/*
.ttl1:before, .ttl1:after{
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	width: 10px;
	height: 5px;
	left: 50%;
}
.ttl1:before{
	background: #194375;
	border-radius: 4px 0 0 4px;
	margin-left: -10px;
}
.ttl1:after{
	background: #C4DAFF;
	border-radius: 0 4px 4px 0;
}
*/

.ttl2{
	line-height: 1.45;
	font-size: 2.4rem;
	padding-bottom: 0.4em;
	margin-bottom: 34px;
	position: relative;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
}
/*
.ttl2:before, .ttl2:after{
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	height: 1px;
}
.ttl2:before{
	z-index: 2;
	background: #194375;
	width: 180px;
}
.ttl2:after{
	z-index: 1;
	background: #e9e9e9;
	width: 100%;
}
*/

.ttl3{
	line-height: 1.5;
	font-size: 2.1rem;
	margin-bottom: 30px;
	position: relative;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: bold;
}
/*
.ttl3:before, .ttl3:after{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	width: 4px;
	height:10px;
	top: 0.3em;
}
.ttl3:before{
	background: #194375;
	border-radius: 4px 4px 0 0;
}
.ttl3:after{
	margin-top: 10px;
	background: #C4DAFF;
	border-radius: 0 0 4px 4px;
}
*/

.ttl4{
	line-height: 1.6;
	color: #194375;
	font-weight: bold;
	font-size: 1.8rem;
	margin-bottom: 0.5em;
}
.ttl4_product{
	line-height: 1.3;
	color: #194375;
	font-weight: bold;
	font-size: 1.8rem;
	margin-bottom: 0.5em;
	padding: 0.5em;
	background: #E7EDF7;
}
@media screen and (min-width: 769px) {

}
@media screen and (max-width: 768px) {
	.ttl1{
		font-size: 2.4rem;
		padding-bottom: 0.5em;
		margin-bottom: 30px;
	}
	.ttl1:before, .ttl1:after{
		width: 10px;
		height: 5px;
	}
	.ttl1:before{
		border-radius: 4px 0 0 4px;
		margin-left: -10px;
	}
	.ttl1:after{
		border-radius: 0 4px 4px 0;
	}
	.ttl2{
		font-size: 22px;
		margin-bottom: 34px;
	}
	.ttl2:before{
		width: 65px;
	}
	.ttl3{
		font-size: 2rem;
		margin-bottom: 30px;
		padding-left: 17px;
	}
	.ttl3:before, .ttl3:after{
		width: 5px;
		height:10px;
		top: 0.3em;
	}
	.ttl3:before{
		border-radius: 4px 4px 0 0;
	}
	.ttl3:after{
		margin-top: 10px;
		border-radius: 0 0 4px 4px;
	}
	.ttl4{
		font-size: 1.8rem;
	}

}

/* ------------------------------
    column
------------------------------ */
.content_common {
	padding-top: 40px;
}
.column0 + .column0{
	margin-top: 60px;
}
.column1 + .column1{
	margin-top: 46px;
}

.column2 + .column2{
	margin-top: 30px;
}

@media screen and (min-width: 769px) {

}
@media screen and (max-width: 768px) {
	/*.content_common p+p{
		margin-top: 1em;
	}*/
	.column0 + .column0{
		margin-top: 44px;
	}
	.column1 + .column1{
		margin-top: 34px;
	}
	.column2 + .column2{
		margin-top: 23px;
	}
}


/* ------------------------------
   リスト
------------------------------ */
/*--list_dot--*/
.list_dot li{
	padding-left: 1em;
	position: relative;
}
.list_dot li:before{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	width: 4px;
	height: 4px;
	background: #194375;
	top: 0.65em;
}


@media screen and (min-width: 769px) {

}
@media screen and (max-width: 768px) {
	.list_dot li+li{
		margin-top: 0.5em;
	}
}
/*--list_num--*/
.list_num{
    counter-reset: li;    /* li のカウンタを 0 にセット */
    list-style: none;
}
.list_num li{
    text-indent: -1.1em;
    padding-left: 1.1em;
}
.list_num li:before {
    color: #194375;
    font-weight: bold;
    counter-increment: li;   /* li の数を一つずつ増加 */
    content: counter(li) ". ";          /* 数を表示 */
}
@media screen and (min-width: 769px) {

}
@media screen and (max-width: 768px) {
	.list_num li+li{
		margin-top: 0.5em;
	}
}


/*--alert--*/
.alert, .alert_li li{
	position: relative;
	color: #333 !important;
}
/*
.alert:before, .alert_li li:before{
	content: "*";
	color: #D30000;
	font-weight: bold;
}
*/
@media screen and (min-width: 769px) {

}
@media screen and (max-width: 768px) {


}
/* ------------------------------
   リンク
------------------------------ */
.link_line{
	color: #194375;
	text-decoration: underline;
	display: inline-block;
}

/*--link_ico--*/
.link_ico{
	color: #0075c2;
	text-decoration: underline;
	padding-left: 15px;
	position: relative;
	display: block;
}
.link_ico:before{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0.75em;
	width: 6px;
	height: 6px;
	border:1px solid #194375;
	border-left: none;
	border-bottom: none;
	transform-origin: center;
	transform: rotate(45deg) translateX(-50%);
}
.link_ico2wrap{
    margin-top: 5px;
    /*display: flex;
    flex-wrap: wrap;*/
}
.link_ico2{
	color: #194375;
	/*text-decoration: underline;*/
	padding-left: 15px;
	position: relative;
	display: block;
    /*margin-right: 1.5em;*/
    margin-top: 0.5em;
}
.link_ico2:hover{
	text-decoration: none;
}
.link_ico2:before{
	content: "";
	display: block;
	position: absolute;
	left: 0;
    top: 0.7em;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0.2em 0 0.2em 0.6em;
    border-color: transparent transparent transparent #194375;
}
/*.link_ico2:before{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0.75em;
	width: 6px;
	height: 6px;
	border:1px solid #194375;
	border-left: none;
	border-bottom: none;
	transform-origin: center;
	transform: rotate(45deg) translateX(-50%);
}*/
/*
.link_ico2{
	color: #194375;
	text-decoration: underline;
	padding-right: 15px;
	position: relative;
	display: inline-block;
}
.link_ico2:after{
	content: "";
	display: inline-block;
	margin-left: 10px;
	width: 6px;
	height: 6px;
	border:1px solid #194375;
	border-left: none;
	border-bottom: none;
	transform-origin: center;
	transform: rotate(45deg) translateX(-50%);
}*/
/*
.link_ico2{
    margin-right: 22px;
    position: relative;
    width: auto;
	min-height: 50px;
	display: flex;
	align-items: center;
	color: #fff;
	background: #194375;
	border-radius: 5px;
	font-size: 1.8rem;
	line-height: 1.2;
	font-weight: bold;
    padding: 5px 46px 5px 20px;
    margin-bottom: 10px;
    margin-top: 30px;
}
.link_ico2wrap .link_ico2{
    margin-top: 0;    
}
.link_ico2:before{
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	border-radius: 5px;
	background: #000;
	top: 3px;
	left: 3px;
	opacity: 0.15;
	z-index: -1;
}
.link_ico2:after{
    content: "";
    display: block;
    position:absolute;
    width: 16px;
    height: 16px;
    background: url("?wp/wp-content/themes/daiwa_theme/img/ico_link2.svg") center no-repeat;
    background-size: contain;
    top: 50%;
    transform: translateY(-50%);
    right: 16px;
}

*/

@media screen and (min-width: 769px) {
    .link_ico2wrap{

    }
    /*.link_ico2{
        display: inline-block;
        padding-top: 14px;
        padding-bottom: 14px;
    }*/

}
@media screen and (max-width: 768px) {
	.link_ico{
		padding-left: 15px;
	}
	.link_ico:before{
		top: 0.6em;
		width: 6px;
		height: 6px;
	}
	.link_ico{
		padding-left: 15px;
	}
	.link_ico:after{
		top: 0.6em;
		width: 6px;
		height: 6px;
	}
    .link_ico2{
		padding-left: 15px;
	}
	.link_ico2:before{
		top: 0.6em;
		width: 6px;
		height: 6px;
	}
	.link_ico2{
		padding-left: 15px;
	}
    .link_ico2:before{
        top: 0.55em;
    }
	.link_ico2:after{
		top: 0.6em;
		width: 6px;
		height: 6px;
	}
    /*
    .link_ico2{
        margin-right: auto;
        margin-left: auto;
        width: 91.6vw;
        max-width: 100%;
    	min-height: 12vw;
    	border-radius: 3px;
    	font-size: 15px;
        padding: 2vw 10vw 2vw 3vw;
        margin-bottom: 2vw;
        margin-top: 15px;
    }
    .link_ico2:before{
    	border-radius: 3px;
    	top: 3px;
    	left: 3px;
    }
    .link_ico2:after{
        width: 16px;
        height: 16px;
        right: 16px;
    }
    .link_ico2wrap .link_ico2{
        margin-top: 0;    
    }*/


}


/*--link_web--*/
.link_web{
	color: #194375;
	text-decoration: underline;
	padding-right: 20px;
	position: relative;
}
.link_web:after{
	content: "";
	display: inline-block;
	position: relative;
	background: url(?wp/wp-content/themes/daiwa_theme/img/ico_link.svg) no-repeat;
	background-size: contain;
	width: 14px;
	height: 12px;
	margin-left: 6px;
}

@media screen and (min-width: 769px) {
}
@media screen and (max-width: 768px) {
	.link_web{
		padding-right: 20px;
	}
	.link_web:after{
		width: 14px;
		height: 12px;
		margin-left: 6px;
	}

}


/*--link_download--*/
.link_download{
	color: #194375;
	text-decoration: underline;
	padding-right: 20px;
	position: relative;
}
.link_download:after{
	content: "";
	display: block;
	display: inline-block;
	position: relative;
	margin-top: 0.3em;
	background: url(?wp/wp-content/themes/daiwa_theme/img/ico_dw.svg) no-repeat;
	background-size: contain;
	width: 14px;
	height: 12px;
	margin-left: 6px;
}

@media screen and (min-width: 769px) {

}
@media screen and (max-width: 768px) {
}


/* ------------------------------
   imgbox
------------------------------ */
/*--imgbox1--*/
.imgbox1{

}
.imgbox1 .img{
	
}
.imgbox1 .txt{

}
@media screen and (min-width: 769px) {
	.imgbox1{
		display: flex;
		justify-content: space-between;
		flex-flow: row-reverse;
	}
	.imgbox1 .img{
		margin-left: 3%;
		max-width: 350px;
		width: 35%;
	}
	.imgbox1 .txt{
		flex:1;
	}
}
@media screen and (max-width: 768px) {
	.imgbox1 .img{
		margin-bottom: 14px;
	}

}
/*--imgbox2--*/
@media screen and (min-width: 769px) {
	.imgbox2{
		display: flex;
		justify-content: space-between;
	}
	.imgbox2 .img{
		margin-right: 3%;
		width: 35%;
		max-width: 350px;
	}
	.imgbox2 .txt{
		flex:1;
	}
}
@media screen and (max-width: 768px) {
	.imgbox2 .img{
		margin-bottom: 14px;
	}
}

/*--imgbox3--*/
@media screen and (min-width: 769px) {
	.imgbox3{
		text-align: center;
	}
	.imgbox3 img{
        max-width: 800px;
	}
    .pop_iframe .imgbox3 img{
        max-width: 100%;
    }

}
@media screen and (max-width: 768px) {


}

/*--imgbox4--*/
@media screen and (min-width: 769px) {
	.imgbox4{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.imgbox4 li{
		width: 48.4%;
	}
	.imgbox4 li:nth-of-type(n+3){
		margin-top: 30px;
	}
}
@media screen and (max-width: 768px) {
	.imgbox4 li+li{
		margin-top: 16px;
	}
}

/*--imgbox5--*/
@media screen and (min-width: 769px) {
	.imgbox5{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.imgbox5 li{
		width: 31.6%;
	}
	.imgbox5 li:nth-of-type(n+4){
		margin-top: 25px;
	}
	.imgbox5:after{
		content:"";
		display: block;
		width: 31.6%;
	}

}
@media screen and (max-width: 768px) {
	.imgbox5 li+li{
		margin-top: 16px;
	}
}


/* ------------------------------
   youtube
------------------------------ */
/*--moviebox--*/
.moviebox {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.moviebox iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100% !important;
}

@media screen and (min-width: 769px) {

}
@media screen and (max-width: 768px) {


}
/*--movbox1--*/
@media screen and (min-width: 769px) {
	.movbox1 .inner{
		width: 800px;
		margin: 0 auto;
	}
}
@media screen and (max-width: 768px) {


}

/*--movbox2--*/
@media screen and (min-width: 769px) {
	.movbox2{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.movbox2 li{
		width: 31.6%;
	}
	.movbox2 li:nth-of-type(n+4){
		margin-top: 25px;
	}
	.movbox2:after{
		content:"";
		display: block;
		width:31.6%;
	}
}
@media screen and (max-width: 768px) {
	.movbox2 li+li{
		margin-top: 15px;
	}
}

/* ------------------------------
    字下げ
------------------------------ */
.hang1, .hangli1 li{
	padding-left: 1em!important;
	text-indent: -1em!important;
}
.hang1h, .hangli1h li{
	padding-left: 1.5em!important;
	text-indent: -1.5em!important;
}
.kakko{
	display: inline-block;
	text-indent:-1em!important;
}


/* ------------------------------
    パンくず
------------------------------ */
.breadwrap{
	
	margin-bottom: 75px !important;
}
.breadcrumb {
	display: flex;
	flex-wrap: wrap;
	line-height: 1;
	align-items: center;
	font-size: 1.2rem;
	font-family: 'Noto Sans JP', sans-serif;
}
.breadcrumb li {
	display: flex;
	align-items: center;
	position: relative;
	padding-bottom: 14px;
}
.breadcrumb li a {
	color: #194375;
	display: block;
	text-decoration: underline;
	margin-right: 25px;
	position: relative;
}
.breadcrumb li+ li{
}
.breadcrumb li a:before {
	content: "";
	display: block;
	position: absolute;
	width: 6px;
	height: 6px;
	border: 1px solid #333;
	transform-origin: center;
	transform: rotate(45deg);
	border-bottom: none;
	border-left: none;
	right: -16px;
	top: 4px;
}
@media screen and (min-width: 769px) {
	.breadcrumb li a:hover {
		opacity: 0.5;
	}
}
@media screen and (max-width: 768px) {
	.breadwrap{
		padding: 14px 0 0;
		margin-bottom: 40px;
	}
	.breadcrumb {
		font-size: 12px;
	}
	.breadcrumb li {
		padding-bottom: 14px;
	}
	.breadcrumb li a {
		margin-right: 25px;
	}
	.breadcrumb li a:before {
		width: 6px;
		height: 6px;
		right: -14px;
		top: 5px;
	}
}

/* ------------------------------
    btn
------------------------------ */
/*--base--*/
.btnwrap{
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
	z-index: 1;
	position: relative;
	padding-bottom: 3px;
	gap: 20px;
}
.post_backbtn{
	margin-top: 40px;
}
.btn{
	display: flex;
	align-items: center;
	position: relative;
	line-height: 1;
	justify-content: space-between;
}
.btn1{
	width: 300px;
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	background: #194375;
	border-radius: 30px;
	position: relative;
	font-size: 1.8rem;
	line-height: 1;
	font-weight: bold;
	transition: .3s;
}
.btn1:before{
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	border-radius: 30px;
	background: #000;
	top: 3px;
	left: 3px;
	opacity: 0.15;
	z-index: -1;
}
.btn1 .arw{
	display: block;
	position: absolute;
	width: 14px;
	height: 14px;
	background: #fff;
	border-radius: 50%;
	transform: translateY(-50%);
	top: 50%;
	right: 20px;
}
.btn1 .arw:before{
	content: "";
	display: block;
	position: absolute;
	left: 3px;
	top: 4px;
	width: 6px;
	height: 6px;
	border:2px solid #194375;
	border-left: none;
	border-bottom: none;
	transform-origin: center;
	transform: rotate(45deg);
}


.btn1w{
	color: #194375;
	border:1px solid #194375;
	background: #fff;
}
.btn1w .arw{
	background: #194375;
}
.btn1w .arw:before{
	border-color: #fff;
}
.btn1_back .arw{
	right: auto;
	left: 20px;
}
.btn1_back .arw:before{
	transform: rotate(225deg);
	left: 5px;
}


.btn2{
	width: 400px;
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	background: #194375;
	border-radius: 5px;
	position: relative;
	font-size: 1.8rem;
	line-height: 1;
	font-weight: bold;
	text-align: center;
	border-radius: 50px;
	opacity: 1;
}


.btn2:hover{
	opacity: 1;
}
.btn2.nkcp{
	background: rgba(239, 130, 0, 1);
	color: rgba(255, 255, 255, 1);
	transition: 0.3s;
}
.btn2.biobran{
	background: rgba(250, 200, 62, 1);
	color: rgba(255, 255, 255, 1);
	transition: 0.3s;
}
.btn2.kefiran{
	background: rgba(68, 175, 53, 1);
	color: rgba(255, 255, 255, 1);
	transition: 0.3s;
}
.btn2.nkcp:hover{
	/*
	background: rgba(255, 255, 255, 1);
	color: rgba(239, 130, 0, 1);
	*/
	opacity: 0.6;
}
.btn2.biobran:hover{
	/*
	background: rgba(255, 255, 255, 1);
	color: rgba(250, 200, 62, 1);
	*/
	opacity: 0.6;
}
.btn2.kefiran:hover{
	/*
	background: rgba(255, 255, 255, 1);
	color: rgba(68, 175, 53, 1);
	*/
	opacity: 0.6;
}


.btn2:before{
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	border-radius: 5px;
	background: #000;
	top: 3px;
	left: 3px;
	opacity: 0.15;
	z-index: -1;
	border-radius: 50px;
	transition: 0.3s;
}
.btn2:hover:before{
	opacity: 0.05;
	transition: 0.3s;
}

.btn2 .arw{
	display: block;
	position: absolute;
	width: 14px;
	height: 14px;
	background: rgba(255, 255, 255, 1);
	border-radius: 50%;
	transform: translateY(-50%);
	top: 50%;
	right: 30px;
	transition: 0.3s;
}
.btn2 .arw:before{
	content: "";
	display: block;
	position: absolute;
	left: 3px;
	top: 4px;
	width: 6px;
	height: 6px;
	border:2px solid #194375;
	border-left: none;
	border-bottom: none;
	transform-origin: center;
	transform: rotate(45deg);
	transition: 0.3s;
}


.btn2.nkcp .arw:before{
	border:2px solid rgba(239, 130, 0, 1);
	border-left: none;
	border-bottom: none;
}
.btn2.biobran .arw:before{
	border:2px solid rgba(250, 200, 62, 1);
	border-left: none;
	border-bottom: none;
}
.btn2.kefiran .arw:before{
	border:2px solid  rgba(68, 175, 53, 1);
	border-left: none;
	border-bottom: none;
}
/*
.btn2.nkcp:hover .arw:before{
	border:2px solid  rgba(255, 255, 255, 1);
	transition: 0.3s;
	border-left: none;
	border-bottom: none;
}
.btn2.biobran:hover .arw:before{
	border:2px solid  rgba(255, 255, 255, 1);
	transition: 0.3s;
	border-left: none;
	border-bottom: none;
}
.btn2.kefiran:hover .arw:before{
	border:2px solid  rgba(255, 255, 255, 1);
	transition: 0.3s;
	border-left: none;
	border-bottom: none;
}

.btn2.nkcp:hover .arw{
	background: rgba(239, 130, 0, 1);
	transition: 0.3s;
}
.btn2.biobran:hover .arw{
	background: rgba(250, 200, 62, 1);
	transition: 0.3s;
}
.btn2.kefiran:hover .arw{
	background: rgba(68, 175, 53, 1);
	transition: 0.3s;
}
*/

.btn2 .arw_b:before{
	transform: rotate(135deg);
	left: 4px;
	top: 3px;
}



.btn2 .ico_link{
	width: 14px;
	margin-left: 1em;
}



.btn2_product{
	color: rgba(25, 67, 117, 1);
	background: rgba(255,255,255,1);
	border: 1px solid rgba(25, 67, 117, 1);
	transition: 0.5s;
}

.en .btn2_product{
	width: 100%;
	height: auto;
	padding: 20px 6%;
}

.en .biobrantop_btnwrap a + a{
	margin-left: 0;
}

.biobran .btn2_product:hover,
.nkcp .btn2_product:hover,
.kefiran .btn2_product:hover{
	color: rgba(255,255,255,1);
	background: rgba(25, 67, 117, 1);
	border: 1px solid rgba(255,255,255,1);
	transition: 0.5s;
}

.biobran .btn2_product .arw,
.nkcp .btn2_product .arw,
.kefiran .btn2_product .arw{
	background: rgba(25, 67, 117, 1);
	transition: 0.5s;
}
.biobran .btn2_product .arw:before,
.nkcp .btn2_product .arw:before,
.kefiran .btn2_product .arw:before{
	border-color: rgba(255,255,255,1);
	transition: 0.5s;
}

.biobran .btn2_product:hover .arw,
.nkcp .btn2_product:hover .arw,
.kefiran .btn2_product:hover .arw{
	background:rgba(255,255,255,1);
	transition: 0.5s;
}
.biobran .btn2_product:hover .arw:before,
.nkcp .btn2_product:hover .arw:before,
.kefiran .btn2_product:hover .arw:before{
	border-color: rgba(25, 67, 117, 1);
	transition: 0.5s;
}

.biobran .btn2_product svg,
.nkcp .btn2_product svg,
.kefiran .btn2_product svg{
	margin-left: 5px;
}
.biobran .btn2_product svg path,
.nkcp .btn2_product svg path,
.kefiran .btn2_product svg path{
	fill:  rgba(25, 67, 117, 1);
	transition: 0.5s;
}
.biobran .btn2_product:hover svg path,
.nkcp .btn2_product:hover svg path,
.kefiran .btn2_product:hover svg path{
	fill:rgba(255,255,255,1);
	transition: 0.5s;
}



.btn2_product:before{
	z-index: -2;
}

.btn2_product:after{
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: #fff;
	z-index: -1;
	border-radius: 50px;
}
.btn2_product .arw{
	background: #194375;
}
.btn2_product .arw:before{
	border-color: #fff;
}
.btn3{

}
.btn3 .arw{

}
.btn3 .arw:before{
	content: "";
	display: block;
	position: absolute;
	transform: rotate(45deg);
}

@media screen and (min-width: 769px) {
	.btn1:hover{
		opacity: 0.6;
	}
	.btn1w:after{
		content: "";
		display: block;
		position: absolute;
		width: 100%;
		height: 100%;
		border-radius: 30px;
		background: #fff;
		top: 0px;
		left: 0px;
		opacity: 1;
		z-index: -1;
	}
	.btn2_inline .arw{
		display: inline-block;
		position: relative;
		transform: translateY(0%);
		top: 0;
		right: 0;
		margin-left: 0.8em;
	}

}
@media screen and (max-width: 768px) {
	.btnwrap{
		padding-bottom: 3px;
	}

	.post_backbtn{
		margin-top: 30px;
	}
	.btn1{
		width: 300px;
		height: 60px;
		border-radius: 30px;
		font-size: 18px;
	}
	.btn1:before{
		top: 3px;
		left: 3px;
		border-radius: 30px;
	}
	.btn1 .arw{
		width: 14px;
		height: 14px;
		right: 20px;
	}
	.btn1 .arw:before{
		left: 3px;
		top: 4px;
		width: 6px;
		height: 6px;
	}
	.btn1_back .arw{
		right: auto;
		left: 20px;
	}
	.btn1_back .arw:before{
		left: 5px;
	}

	.btn2{
		width: 100%;
		height: 60px;
		border-radius: 3px;
		font-size: 1.8rem;
		line-height: 1.3;
	}
	.btn2:before{
		border-radius: 3px;
		top: 3px;
		left: 3px;
	}
	.btn2 .arw{
		width: 14px;
		height: 14px;
		right: 20px;
	}
	.btn2 .arw:before{
		left: 20%;
		top: 30%;
		width: 6px;
		height: 6px;
	}
	.btn2 .ico_link{
		width: 14px;
	}

}
/* ------------------------------
    text_area
------------------------------ */
.text_area{
	display: flex;
}
.text_area input{
	border:1px solid #333;
	border-radius: 4px;
	height: 46px;
	padding: 10px 18px;
}
.text_area button{
	height: 46px;
	width: 94px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #194375;
	border: 1px solid #194375;
	border-radius: 5px;
	margin-left: 22px;
	font-size: 1.8rem;
	font-weight: bold;
	transition: .3s;
}

.text_area input::placeholder {
  color: #B9B9B9;
}
/* IE */
.text_area input:-ms-input-placeholder {
  color: #B9B9B9;
}
/* Edge */
.text_area input::-ms-input-placeholder{
  color: #B9B9B9;
}
@media screen and (min-width: 769px) {
	.text_area input{min-width: 320px;}
	.text_area button:hover{
		opacity: 0.6;
	}
}

@media screen and (max-width: 768px) {
	.text_area{
		justify-content: space-between;
	}
	.text_area input{
		border-radius: 5px;
		height: 40px;
		width: 260px;
		padding: 10px;
	}
	.text_area button{
		height: 40px;
		width: 80px;
		border-radius: 5px;
		margin-left: 0;
		font-size: 18px;
	}

}

/* ------------------------------
    boxarea
------------------------------ */
.boxarea{
	border:1px solid #194375;
}
.boxarea_ttl{
	background: #194375;
	color: #fff;
	line-height: 1.2;
	padding: 16px 20px;
	font-size: 1.8rem;
	font-weight: bold;
}
.boxarea_inner{
	padding: 25px 20px 20px;
}
.boxarea + .boxarea{
	margin-top: 20px;
}
@media screen and (min-width: 769px) {
}

@media screen and (max-width: 768px) {
	.boxarea_ttl{
		padding: 14px;
		font-size: 18px;
	}
	.boxarea_inner{
		padding: 14px 14px 10px;
	}
	.boxarea + .boxarea{
		margin-top: 8px;
	}

}
/* ------------------------------
    table
------------------------------ */
.table1{
}
.table1 th{
	font-weight: bold;
}
.table1 th, .table1 td{
	padding: 20px;
	border-bottom: 1px solid rgba(151, 151, 151, 0.8);
	vertical-align: middle;
}
.table1 tr:first-child th, .table1 tr:first-child td{
	border-top: 1px solid rgba(151, 151, 151, 0.8);
}
@media screen and (max-width: 768px){
	.table1 tr:first-child td{
		border-top: none;
	}
}
.table1 th{
	vertical-align: middle;
	background: rgba(239, 239, 239, 0.3);
	color: #003876;
	width: 142px;
}
.table1 td{
	line-height: 1.5 !important;
}

.table2{
}
.table2 th, .table2 td{
	padding: 20px;
	border:1px solid #194375;
}
.table2 th{
	font-weight: bold;
	vertical-align: middle;
	background: #194375;
	color: #fff;
	width: 212px;
}
.kefiran .table2 th{
	background: #44af35;
}
.kefiran .table2 th, .kefiran .table2 td{
	border:1px solid #44af35;
}
.nkcp .table2 th, .nkcp .table2 td{
	border:1px solid #ef8200;
}
.nkcp .table2 th{
	border-bottom-color: #fff;
}

.nkcp .table2 th{
	font-weight: bold;
	vertical-align: middle;
	background: #ef8200;
	color: #fff;
	width: 212px;
}

.table2 td{
}
@media screen and (min-width: 769px) {
	.table2 th{
		border-bottom-color: #fff;
	}
	.kefiran .table2 th{
		border-bottom-color: #fff;
	}
	.table2 tr:last-of-type th{
		border-bottom-color: #194375;
	}
	.kefiran .table2 tr:last-of-type th{
		border-bottom-color: #44af35;
	}
	.nkcp .table2 tr:last-of-type th{
		border-bottom-color: #ef8200;
	}
}
@media screen and (max-width: 768px) {
	.table1{
		border-bottom:1px solid #194375;
	}
	.table1 th, .table1 td{
		padding: 10px;
	}
	.table1 td{
		border-bottom: none;
		border-top: none;
		padding: 15px 10px;
	}

	.table2{
		border-bottom:1px solid #194375;
	}
	.table2 th, .table2 td{
		display: block;
		width: 100%;
		padding: 10px;
	}
	.nkcp .table2 th{
		width: 100%;
		border-bottom: 0;
		display: block;
	}
	.table2 td{
		border-bottom: none;
		border-top: none;
		padding: 15px 10px;
	}
}

/* ------------------------------
    pagelink
------------------------------ */
.pagelink{
	display: flex;
	justify-content: space-between;
}
.pagelink li{
	width: 23.5%;
}
.pagelink a{
	width: 100%;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #194375;
	border:1px solid #194375;
	padding-bottom: 4px;
	font-weight: bold;
	position: relative;
	font-size: 1.8rem;
}

.pagelink li a:before{
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	bottom: 5px;
	width: 6px;
	height: 6px;
	border:1px solid #194375;
	border-left: none;
	border-top :none;
	transform-origin: center;
	transform: rotate(45deg) translateX(-50%);
}
@media screen and (min-width: 769px) {

}
@media screen and (max-width: 768px) {
	.pagelink{
		flex-wrap: wrap
	}
	.pagelink li{
		width: 48.7%;
	}
	.pagelink li:nth-of-type(n+3){
		margin-top: 10px;
	}
	.pagelink a{
		height: 50px;
		padding-bottom: 4px;
		font-size: 18px;
	}

	.pagelink li a:before{
		bottom: 5px;
		width: 6px;
		height: 6px;
	}


}


/* ------------------------------------------------------------
    記事関連共通
------------------------------------------------------------ */
/* ------------------------------
    post_ttlbox
------------------------------ */
.post_datebox{
	display: inline-block;
	border: 1px solid #E1E1E1;
	padding: 0.5em 0.7em;
	line-height: 1;
	margin-bottom: 15px;
}
.post_datebox span{
	line-height: 1;
	font-size: 1.4rem;
	display: inline-block;
}
.post_datebox span+span{
	margin-left: 0.7em;
}
.post_datebox .num{
	color: #194375;
	font-weight: bold;
}
.post_ttlbox .post_date{
	display: block;
	line-height: 1;
	margin-bottom: 0.7em;
	font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
	.post_ttlbox{
		margin-bottom: 23px;
	}
	.post_datebox{
		margin-bottom: 15px;
	}
	.post_datebox span{
		font-size:1.4rem;
	}
	.post_ttlbox .post_date{
		font-size:1.4rem;
    }
}


/* ------------------------------
    post_content
------------------------------ */
#news .post_content{
	margin-bottom: 40px;
}


.post_content img{
	width: auto;
	max-width: 100%;
}
.post_content h4 {
	color: #0075C2;
    font-size: 2rem;
}
.post_content p{
	margin-bottom: 1.5em;
}
.post_content strong,
.post_content b{
	text-decoration: underline;
	font-weight: bolder;
}
.post_content a{
	color: #194375;
	text-decoration: underline;
}
@media screen and (max-width: 768px) {
	.post_content p{
		margin-bottom: 1em;
	}
}

.post_content ol {
	margin-bottom: 1.8em;
	padding-left: 1.7em;
}
.post_content ol li {
	display: list-item;
	padding-left: 0.6em;
	list-style: decimal !important;
}
.post_content ol li:not(:last-child) {
	padding-bottom: 0.2em;
}

.post_content ul {
	margin-bottom: 1.8em;
	padding-left: 0.2em;
	list-style: none;
	list-style-position: inside;
}
.post_content ul li {
	position: relative;
	display: list-item;
	padding-left: 2em;
}
.post_content ul li::before {
	content: "";
	display: block;
	position: absolute;
	left: 0.5em;
	top: 0.6em;
	width: 0.38em;
	height: 0.38em;
	border-radius: 50%;
	background-color: #000;
}
.post_content ul li:not(:last-child) {
	padding-bottom: 0.2em;
}

.post_content ul.check_list {
	list-style: none;
	margin-left: 0.2em;
}
.post_content ul.check_list li {
	padding-left: 2em;
}
.post_content ul.check_list li::before {
	content: "";
	display: block;
	position: absolute;
	left: 0.2em;
	top: 0.5em;
	width: 1em;
	height: 1em;
	background-image: url("?wp/wp-content/themes/daiwa_theme/img/list_check.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-color: unset;
}

.post_content blockquote {
	background-color: #F7F6F5;
	color: #504946;
	position: relative;
	padding: 2.5em 90px 2.5em 110px;
	margin-bottom: 1.8em;
}
@media screen and (max-width: 768px) {
	.post_content blockquote {
	  padding: 2.5em 1.5em 2.5em 4em;
	}
}
.post_content blockquote::before {
	content: "";
	display: block;
	background-color: #C4DBF3;
	width: 10px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
@media screen and (max-width: 768px) {
	.post_content blockquote::before {
	  width: 6px;
	}
}
.post_content blockquote::after {
	content: "";
	display: block;
	background-image: url("?wp/wp-content/themes/daiwa_theme/img/icon_blockquote.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width: 43px;
	height: 34px;
	position: absolute;
	left: 40px;
	top: 2em;
}
@media screen and (max-width: 768px) {
	.post_content blockquote::after {
	  width: 2.8rem;
	  height: 2em;
	  left: 1.2em;
	  top: 2.2em;
	}
}


/* ------------------------------
    infoli
------------------------------ */
.infoli{
	line-height: 1;
/*	border-bottom: 1px solid #E1E1E1;*/
	padding-top: 20px;
}
.infoli li{
	border-bottom: 1px solid #E1E1E1;
}
.infoli li a{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	padding: 20px 12px;
}

.infoli .date{
	font-size: 1.6rem;
	font-weight: bold;
	width: 114px;
}
.infoli .cate{
	padding: 5px 10px;
	min-width: 80px;
	font-size: 1.4rem;
	color: #fff;
	text-align: center;
	display: inline-block;
}
@media screen and (min-width: 769px) {
	.infoli{
		width: 100%;
	}
	.infoli .txt{
		flex:1;
		font-size: 1.6rem;
		line-height: 1.3;
		padding: 0 0.2em;
		letter-spacing: 0.05em;
		white-space: nowrap;
    	overflow: hidden;
    	text-overflow: ellipsis;
	}

	.infoli li a:hover{
		opacity: 1;
		background: #fafafa;
	}
	.infoli .cate{
		margin-right: 1em;
	}
}
@media screen and (max-width: 768px) {
	.infoli{
		line-height: 1;
		padding-top: 0;
	}
	.infoli li{
	}
	.infoli li a{
		display: block;
		padding: 18px 10px;
		align-items: center;
	}
	.infoli .date{
		width: 100%;
		font-size: 18px;
		margin-right: 0.5em;
	}

	.infoli .txt{
		width: 100%;
		margin-top: 8px;
		line-height: 1.6;
		font-size: 1.6rem;
		letter-spacing: 0.05em;
	    display: -webkit-box;
	    -webkit-box-orient: vertical;
	    -webkit-line-clamp: 3;
	    overflow: hidden;
	    text-overflow: ellipsis;
	    max-height: 4.6em;
	    position: relative;
		word-break: break-all;
	}

}

/* ------------------------------
    info_pager
------------------------------ */
.news-single .pagination{
	margin-top: 30px;
	padding-bottom: 10px;
	display: flex;
	justify-content: center;
	color: #194375;
	gap: 10px;
}
.news-single .pagination .page-numbers{
	width: 40px;
	height: 40px;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	line-height: 1;
	font-size: 1.6rem;
	border: 1px solid #194375;
	border-radius: 50%;
	color: #194375;
}
.news-single .pagination .page-numbers.current{
	background: #194375;
	color: #fff;
}
.news-single .pagination .page-numbers:hover{
	opacity: 1;
	background: #194375;
	color: #fff;
}
.news-single .pagination .page-numbers.next , .news-single .pagination .page-numbers.prev{
	background: #194375;
	color: #fff;
}
.news-single .pagination .page-numbers.next:hover , .news-single .pagination .page-numbers.prev:hover{
	background: #fff;
	color: #194375;
}
.news-single .pagination .page-numbers.prev:before{
	content: "";
	display: block;
	position: absolute;
	width: 8px;
	height: 8px;
	border: 2px solid #fff;
	transform: rotate(45deg);
	transform-origin: center;
	margin-left: 2px;
	border-right: none;
	border-top: none;
}
.news-single .pagination .page-numbers.next:before{
	content: "";
	display: block;
	position: absolute;
	width: 8px;
	height: 8px;
	border: 2px solid #fff;
	transform: rotate(45deg);
	transform-origin: center;
	margin-left: -2px;
	border-left: none;
	border-bottom: none;
}
.news-single .pagination .page-numbers.prev:hover:before, .news-single .pagination .page-numbers.next:hover:before{
	border-color: #194375;
}
@media screen and (min-width: 769px) {
}
@media screen and (max-width: 768px) {
	.news-single .pagination{
		margin-top: 40px;
		padding-bottom: 0;
		gap: 7px;
	}
	.news-single .pagination .page-numbers{
		width: 35px;
		height: 35px;
		font-size: 16px;
	}
}


/* ------------------------------
    select year
------------------------------ */
.backli_year{
}
.backli_year ul{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap
}
.backli_year li{
	width: 90px;
	height:50px;
	margin-right: 8px;
}
.backli_year li a{
	width: 100%;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border:1px solid #194375;
	padding-bottom: 4px;
	font-weight: bold;
	position: relative;
	color: #194375;
    background: #fff;
}
.backli_year li a:before{
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	bottom: 2px;
	width: 6px;
	height: 6px;
	border:1px solid #194375;
	border-left: none;
	border-top :none;
	transform-origin: center;
	transform: rotate(45deg) translateX(-50%);
}

.backli_selectbox{
	position: relative;
	max-width: 500px;
	width: 100%;
	height: 60px;
	padding-left: 30px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	font-size: 2rem;
	background-color: #003876;
	border-radius: 50px;
}
.backli_selectbox .arw{
	    display: block;
		position: absolute;
		width: 20px;
		height: 20px;
		background: #fff;
		border-radius: 50%;
		transform: translateY(-50%);
		top: 50%;
		right: 30px;
}
.backli_selectbox .arw:before{
	content: "";
    display: block;
    position: absolute;
	top: 6px;
	left: 6px;
    width: 8px;
    height: 8px;
    border: 2px solid #194375;
    border-left: none;
    border-bottom: none;
    transform-origin: center;
    transform: rotate(135deg);
}
.backli_selectbox form{
	width: 100%;
	height: 100%;
}
.backli_selectbox select{
	width: 100%;
		height: 100%;
	background-color: transparent;
	color: #fff;
	cursor: pointer;
}


@media screen and (min-width: 769px) {
	.backli_year{
		overflow: hidden;
	}
	.backli_year ul{
		width: calc(100% + 10px);
	}
    .backli_year li a.active{
    	color: #fff;
        background: #194375;
    }
    .backli_year li a.active:before{
    	border-color:#fff;
    }

}
@media screen and (max-width: 768px) {
}


/* ------------------------------
    post_itemlist
------------------------------ */
.post_itemlist{
	border:1px solid #194375;
	padding: 40px;
	margin-bottom: 65px;
}
.post_itemlist ul{}
.post_itemlist li{
	line-height: 1.5;
}
.post_itemlist li+li{
	margin-top: 15px;
}
.post_itemlist li a{
	color: #194375;
	text-decoration: underline;
}
.post_itemlist .ico_new{
	display: inline-block;
	margin-left: 10px;
	font-size: 1.2rem;
	line-height: 1;
	font-weight: bold;
	padding: 0.5em 0.7em;
	color: #fff;
	background: #194375;
}

@media screen and (min-width: 769px) {
	.post_itemlist{
		max-width: 780px;
		margin-left: auto;
		margin-right: auto;
	}
}

@media screen and (max-width: 768px) {
	.post_itemlist{
		padding: 15px 20px;
		margin-bottom: 48px;
	}
	.post_itemlist ul{}
	.post_itemlist li{
		line-height: 1.75;
	}
	.post_itemlist li+li{
		margin-top: 14px;
	}
	.post_itemlist .ico_new{
		margin-left: 10px;
		font-size: 12px;
		padding: 0.4em 0.6em 0.2em;
	}

}


/* ------------------------------
    productlist
------------------------------ */
.productlist{
	padding-bottom: 3px;
}
.productlist a{
	display: block;
	background: #fff;
	/*
	box-shadow: 3px 3px 3px 3px rgba(0,0,0,0.1);
	*/
	overflow: hidden;
	position: relative;
	border-radius: 10px;
	border: 1px solid rgba(102, 102, 102, 0.25);
}
.productlist .logo{
	min-height: 180px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	text-align: center;
	background-color: #fff;
}
.productlist .logo img{
	transform: scale(1);
	transition: 0.5s;
}

.product_no1 img{
	max-width: 240px;
	width: 100%;
	height: auto;
}
.product_no2 img{
	max-width: 185px;
	width: 100%;
	height: auto;
}
.product_no3 img{
	max-width: 266px;
	width: 100%;
	height: auto;
}

.productlist .logo1:before{
	background: #FFC51F;
}
/*.productlist .logo2 img{
	width: 162px;
}*/
.productlist .logo2:before{
	background: #FF871E;
}
/*.productlist .logo3 img{
	width: 250px;
}*/
.productlist .logo3:before{
	background: #19C415;
}
/*.productlist .logo4 img{
	width: 166px;
}*/
.productlist .logo4:before{
	background: #99CCEB;
}
.productlist p{
	text-align: center;
}


.productlist li{
	height: 100%;
	margin: 0;
	display: flex;
	align-items: stretch;
}
.productlist li a{
	color: #fff;
	width: 100%;
	display: flex;
	flex-direction: column;
	border-radius: 10px;
	padding-bottom: 0;
	box-shadow: 0 3px 13px rgba(0, 0, 0, 0);
	overflow: hidden;
	position: relative;
	box-sizing: border-box;
}
.productlist li a .bottom-contents{
	padding:0 0 24px;
	line-height: 1.5;
	display: flex;
	flex-direction: column;
}
.en .productlist li a .bottom-contents{
	padding:25px 0 24px;
	line-height: 1.5;
	display: flex;
	flex-direction: column;
}
.productlist li.product_no1 a .bottom-contents{
	background-color: #FAC83E;
}
.productlist li.product_no1 a .bottom-contents p{
	max-width: 210px;
	margin: 0 auto;
}

/*英語版設定
--------------------------------------------------------*/
.en .productlist li:nth-of-type(1).product_no1 a .bottom-contents p{
	max-width: 330px;
	margin: 0 auto;
}
.en .productlist li:nth-of-type(2).product_no2 a .bottom-contents p{
	max-width: 247px;
	margin: 0 auto;
}
.en .productlist li:nth-of-type(3).product_no3 a .bottom-contents p{
	max-width: 237px;
	margin: 0 auto;
}

.en .productlist{
	display: flex;
	justify-content: space-between;
	gap:20;
}

.en .productlist .text-box{
	display: flex;
	flex-direction: column;
	padding-top: 25px;
	padding-bottom: 18px;
	height: 100%;
}
.en .productlist li:nth-child(1) .text-box{
	background-color: #FAC83E;
}
.en .productlist li:nth-child(2) .text-box{
	background-color: #EF8200;
}
.en .productlist li:nth-child(3) .text-box{
	background-color: #44AF35;
}

.en .productlist .text-box h3{
    padding: 0 10px;
	text-align: center;
	font-size: 2.4rem;
	color: #003876;
	font-weight: bold;
}
.en .productlist .text-box p{
	max-width: 237px;
	text-align: center;
	margin: 0 0 15px;
	font-size: 1.6rem;
	line-height: 1.5;
	color: #fff;
	margin: 0 auto 5px;
}
.en .productlist li:nth-of-type(1) .text-box p{
	max-width: 307px;
	margin: 0 auto 20px;
}
.en .productlist li:nth-of-type(2) .text-box p{
	max-width: 247px;
}
@media screen and (min-width: 769px) and (max-width: 999px) {
  .en .productlist li:nth-of-type(3) {
    margin-top: 0;
  }
  .en .productlist li.product_no3 {
  	margin: 20px auto 0 auto;
  }
}
.en .productlist.text-box p:last-child{
	width: fit-content;
    margin: auto auto 0;
	font-size: 1.2rem;
	color: #003876;
	position: relative;
}
.en .productlist .text-box p:last-child:after{
	content: "";
	display: block;
	width: 0;
	height: 1px;
	background-color: #003876;
	position: absolute;
	bottom: 0;
	left: 0;
}
.en .productlist li:hover .text-box p:last-child:after{
	width: 100%;
}

.en .productlist .btn-box{
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	margin-top: auto;
}
.en .productlist .btn-box .btn-label{
	display: inline-block;
    z-index: 1;
    position: relative;
}

.en .productlist.btn-click{
	color: #003876;
	overflow: hidden;
	border-radius: 50px;
}
.en .productlist .btn-click .btn-inner{
	position: relative;
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    width: 230px;
    height: 50px;
	border-radius: 50px;
	font-size: 1.4rem;
	background-color: #fff;
	transition: 0.5s;
}

.en .productlist .btn-click .btn-inner:before{
	  transition: 1s;
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    border: 1px solid rgba(0, 56, 118, 1);
    border-left: none;
    border-bottom: none;
    transform-origin: center;
    position: absolute;
    top: 50%;
    right: 8.3%;
    transform: translateY(-50%) rotate(45deg);
    -webkit-transform: translateY(-50%) rotate(45deg);
	transition: 0.5s;
}

.en .productlist .btn-click .btn-inner .btn-label{
	font-weight: bold;
	display: inline-block;
    z-index: 1;
    position: relative;
	color: #003876;
	transition: 0.5s;
}

@media screen and (min-width: 769px) {
.en .productlist li a:hover .btn-click .btn-inner{
	background-color: #003876;
	transition: 0.5s;
}
.en .productlist li a:hover .btn-click .btn-inner:before{
	border: 1px solid rgba(255, 255, 255, 1);
	border-left: none;
    border-bottom: none;
	transition: 0.5s;
}
.en .productlist li a:hover .btn-click .btn-inner .btn-label{
	color: #fff;
	transition: 0.5s;
}

}
@media screen and (max-width: 768px) {
.en .productlist a{
	max-width: initial;
}
.en .productlist .text-box h3{
	font-size: 2.5rem;
}
.en .productlist .text-box p{
	font-size: 1.5rem;
}
.en .productlist　.text-box p:last-child{
	font-size: 1.4rem;
}
.en .productlist li:hover .text-box p:last-child:after{
width: 100%;
}
.en .productlist{
	flex-direction: column;
}
.en .productlist li{
max-width: initial;
	width: 100%;
}
	
}
/*英語版設定ここまで
--------------------------------------------------------*/


.productlist li.product_no2 a .bottom-contents{
	background-color: #EF8200;
}
.productlist li.product_no3 a .bottom-contents{
	background-color: #44AF35;
}

.productlist li a .bottom-contents{
	min-height: 180px;
	padding-top: 25px;
}

.productlist li .product_btn{
	position: relative;
	width: 240px;
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: auto auto 0;
	background-color: rgba(255, 255, 255, 1.0);
	border-radius: 50px;
	transition: 0.5s;
	color: rgba(0, 56, 118, 1.0);
}
.productlist li .product_btn p{
	font-size: 1.4rem;
	font-weight: bold;
}
.productlist li .product_btn .arw{
	position: absolute;
	display: block;
	width: 6px;
	height: 6px;
	border:1px solid rgba(0, 56, 118, 1.0);
	border-left: none;
	border-bottom: none;
	transform-origin: center;
	transform: rotate(45deg);
	right: 20px;
	transition: 0.5s;
}


/*0415追加*/
.productlist li a:hover , .productlist li a:hover img{
	opacity: 1;
}
.productlist li a:hover .product_btn{
	background-color: rgba(0, 56, 118, 1.0);
	color:  rgba(255, 255, 255, 1.0);
}
.productlist li a:hover .product_btn .arw{
	border:1px solid rgba(255, 255, 255, 1.0);
	border-left: none;
	border-bottom: none;
}
.productlist li a:hover .logo img{
	transform: scale(1.2);
}


/*---------*/

@media screen and (min-width: 769px) {
	.productlist{
		max-width: 1000px;
		padding: 0 10px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.productlist li{
		width: 32.1%;
		height: auto;
	}
	.productlist li+li{
		margin-left: 1.85%;
	}

	.productlist p{
		margin: 0 auto;
		max-width: 330px;
		padding: 0 10px;
	}
}
@media screen and (min-width: 1000px) {
	.productlist li:nth-of-type(3n-2){
		margin-left: 0;
	}
	.productlist li:nth-of-type(n+4){
		margin-top: 20px;
	}
}
@media screen and (min-width: 769px) and (max-width: 999px) {
	.productlist li{
		width: 49%;
	}
	.productlist li+li{
		margin-left: 2%;
	}
	.productlist li:nth-of-type(odd){
		margin-left: 0;
	}
	.productlist li:nth-of-type(n+3){
		margin-top: 20px;
	}
}

@media screen and (max-width: 768px) {
	.productlist{
	}
	.productlist li+li{
		margin-top: 20px;
	}
	.productlist a{
		box-shadow: 0px 3px 3px 0px rgba(0,0,0,0.16);
	}
	.productlist .logo{
		min-height: 105px;
		padding-top: 25px;
		padding-bottom: 15px;
	}
	.productlist .logo img{
		width: auto;
		max-width: 190px;
	}
	.productlist .logo:before{
		width: 93px;
		/*max-width: 93px;*/
	}
	/*
	.productlist .logo1 img{
		width: 48.8vw;
	}
	.productlist .logo2 img{
		width: 46.1vw;
	}
	.productlist .logo3 img{
		width: 66.6vw;
	}
	.productlist .logo4 img{
		width: 44vw;
	}*/
	.productlist p{
		text-align: center;
		padding-left: 10px;
		padding-right: 10px;
	}
	.productlist .arw{
		width: 14px;
		height: 14px;
		bottom: 10px;
		right: 14px;
	}
	.productlist .arw:before{
		left: 20%;
		top: 30%;
		width: 6px;
		height: 6px;
	}
	.productlist li.product_no1 a .bottom-contents p{
		max-width: 250px;
	}

}


/* ------------------------------
    bg
------------------------------ */
.bg_wh{
	background:#fff;
}

/* ------------------------------
    margin
------------------------------ */
.mt20{
	margin-top: 20px;
}
.mt35{
	margin-top: 35px;
}
.mt40{
	margin-top: 40px;
}
.mt60{
	margin-top: 60px;
}
.mt100{
	margin-top: 100px;
}
.mt150{
	margin-top: 150px;
}
@media screen and (max-width: 768px) {
	.mt20{
		margin-top: 8px;
	}
	.mt35{
		margin-top: 49px;
	}
	.mt40{
		margin-top: 15px;
	}
	.mt60{
		margin-top: 23px;
	}
	.mt100{
		margin-top: 40px;
	}
	.mt150{
		margin-top: 56px;
	}
}
/* ------------------------------
	tab
------------------------------ */
.tabbtn{
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	position: relative;
	padding-bottom: 18px;
	height: 77px;
}
.tabbtn li{
	cursor: pointer;
	transition: .3s;
	width: 49%;
	height: 60px;
	color: #194375;
	border: 1px solid #194375;
	padding: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2.1rem;
	font-weight: bold;
	letter-spacing: 0.05em;
	position: relative;
}

.tabbtn li.active{
	background: #194375;
	color: #fff;
}
.tabbtn li.active:before{
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 15px 0 15px;
	border-color: #194375 transparent transparent transparent;
	left: 50%;
	bottom: 0;
	transform: translate(-50%, 100%);
}

.nkcp .tabbtn li{
	color: #ef8200;
}
.nkcp .tabbtn li{
	border: 1px solid #ef8200;
}
.nkcp .tabbtn li.active{
	background: #ef8200;
	color: #fff;
}
.nkcp .tabbtn li.active:before{
	border-color: #ef8200 transparent transparent transparent;
}

.biobran .tabbtn li{
	color: #fac83e;
}
.biobran .tabbtn li{
	border: 1px solid #fac83e;
}
.biobran .tabbtn li.active{
	background: #fac83e;
	color: #fff;
}
.biobran .tabbtn li.active:before{
	border-color: #fac83e transparent transparent transparent;
}

.kefiran .tabbtn li{
	color: #44AF35;
}
.kefiran .tabbtn li{
	border: 1px solid #44AF35;
}
.kefiran .tabbtn li.active{
	background: #44AF35;
	color: #fff;
}
.kefiran .tabbtn li.active:before{
	border-color: #44AF35 transparent transparent transparent;
}

.tabcontent{
	display: none;
}
.tabcontent.active{
	display: block;
}
.tabcontent tr td{
	color: #666666;
}
@media screen and (min-width: 769px) {
	.tabbtn li:hover{
		background: #194375;
		color: #fff;
	}
	.nkcp .tabbtn li:hover{
		background: #ef8200;
		color: #fff;
	}
	.biobran .tabbtn li:hover{
		background: #fac83e;
		color: #fff;
	}
	.kefiran .tabbtn li:hover{
		background: #44AF35;
		color: #fff;
	}

}
@media screen and (max-width: 768px) {
	.tabbtn{
		padding-bottom: 18px;
	}
	
	.tabbtn li{
		width: 48.5%;
		height: 62px;
		font-size: 2.1rem;
	}
	
	.en .tabbtn li{
		font-size: 1.6rem;
		line-height: 1.2;
		text-align: center;
	}
	
	.tabbtn li.active:before{
		border-width: 15px 15px 0 15px;
	}
}



/* ----------------------------------------------------------------------------------------------------
*  header
* --------------------------------------------------------------------------------------------------*/
header {
    width: 100%;
    position: fixed;
    z-index: 999;
    top:0;
    transition: .7s;
    padding: 0;
    height: auto;
    background: #fff;
}
header .inner{
	align-items: center;
	height: 100%;
}
@media screen and (min-width: 1025px) {
	header{
	}
	header .inner{
		position: relative;
		margin-left: auto;
		margin-right: auto;
        justify-content: center;
	}
}
@media screen and (max-width: 1024px) {
	header{
		padding: 0;
		top: 0;
		height:50px;
/*        height:50px;*/
	}

}
@media screen and (max-width: 768px) {
    
}



/*----logo------------------------------*/
header .logo{
	padding-left: 30px;
	line-height: 1;
}
header .logo a{
	display: block;
}
header .logo img {
	width: auto;
	height: 60px;
}
header .logo span {
    display: block;
    line-height: 1;
    text-align: center;
    margin-top: 0.4em;
    font-size: 1.5rem;
    color: #194375;
}
@media screen and (min-width: 1025px) {
}
@media screen and (max-width: 1024px) and (min-width: 769px) {
    header .logo img {
    	width: 120px;
    }
    
}
@media screen and (max-width: 768px) {
	header .logo{
		padding-left: 10px;
	}
	header .logo img {
		width: 98px;
	}
    header .logo span {
        font-size: 10px;
    }
}

/*----nav------------------------------*/

	.select_lang{
		position: relative;
		line-height: 1;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	.select_lang select{
		width: 100%;
		height: 100%;
		opacity: 0;
		cursor: pointer;
		position: relative;
		background: transparent;
	}
	.select_lang p{
		text-align: center;
		position: absolute;
		top: 0;
		font-size: 1.6rem;
		font-weight: bold;
		width: 100%;
		z-index: -1;
	}
@media screen and (min-width: 1025px) {
	.menu_opn{
		width: 100%;
		display: block !important;
	}
	.menu_inner{
		display: flex;
		flex-direction: column-reverse;
		align-items: flex-end;
	}
	header .header-bottom{
		width: 100%;
		padding: 0 20px;
		background-color: #003876;
	}
	header .gnav{
		max-width: 1500px;
		margin: 0 auto;
		display: flex;
		width: auto;
		height: 50px;
	}
	header .gnav li{
		width: 20%;
		position: relative;
		cursor: pointer;
		color: #fff;
	}
    header .gnav li .pc-link{
		padding: 10px 20px;
        width: 100%;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
	}
	header .gnav li.sub a{
		padding-left: 40px;
	}
	header .gnav li.sub a:before{
	content: "";
    display: none;
    position: absolute;
    width: 4px;
    height: 1px;
    background: #fff;
    top: 50%;
    left: 30px;
	}
    header .gnav li:hover ul li.sub a:before{
        display: block;
    }
	header .gnav .mid{
		display: flex;
		align-items: center;
		justify-content: center;
		height: 100%;
		padding: 10px 20px;
		font-size: 1.6rem;
		line-height: 1;
		position: relative;
		gap: 9px;
		text-align: center;
	}
	header .gnav .mid:after{
		content: "";
    display: block;
    width: 6px;
    height: 6px;
    border: 1px solid #fff;
    border-left: none;
    border-bottom: none;
    transform-origin: center;
    transform: rotate(135deg);
	}
	header .gnav .mid:before{
		content: "";
		display: block;
		position: absolute;
		bottom: 10px;
		left: 20px;
		width: 0;
		height: 2px;
		background: #fff;
		transition: .3s;
	}
	header .gnav li:hover .mid:before{
		width: calc(100% - 40px);
	}
	header .gnav .ico{
		width: 12px;
		margin-right: 10px;
	}
	header .gnav .nav_medical .mid{
		color: #0c2a4d;
	}
	header .gnav li.nav_medical:hover .mid:before{
		background: #0c2a4d;
	}
	.gnav_s{
		position: absolute;
		top: 50px;
		left: 50%;
		transform: translateX(-50%);
		width: 210px;
	}
	.gnav_s:before{
		content: "";
		display: block;
		position: absolute;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 5px 6px 5px;
		border-color: transparent transparent #003876 transparent;
		top: -6px;
		left: 50%;
		transform: translateX(-50%);
	}
	header .gnav_s li{
		width: 100%;
	}
	.gnav_s a{
		background: #e9e9e9;
      color: #194375;
		display: flex;
		align-items: center;
		width: 100%;
		height: 100%;
		padding:0 10px;
		transition: .3s;
		overflow: hidden;
		font-size:0.9em;
	}

	.nav_company .gnav_s .sub a, .nav_info .gnav_s .sub a{
		position: relative;
		padding-left: 49px;
	}
	.nav_company .gnav_s .sub a:before, .nav_info .gnav_s .sub a:before{
		content: "";
		display: block;
		position: absolute;
		left: 36px;
		top: 50%;
		height: 1px;
		width: 4px;
		background: #fff;
	}
	.nav_company .gnav_s{
		width: 220px;
	}
	.nav_medical .gnav_s:before{
		border-color: transparent transparent #0c2a4d transparent;
	}
	.nav_medical .gnav_s a{
		background: #0c2a4d;
	}
	header .gnav .gnav_s li a{
		height:0;
	}
	header .gnav li:hover .gnav_s li a{
		height: 46px;
	}
	header .gnav_s:before{
		display: none;
	}
	header .gnav li:hover .gnav_s:before{
		display: block;
	}
    .gnav2-box{
        max-width: 1500px;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 20px 0;
		margin: 0 auto;
    }
	.gnav2{
		display: flex;
		flex-flow: row-reverse;
		align-items: center;
		height: 50px;
	}
	.gnav2 li a{
		padding: 5px 35px;
		border-left: 1px solid rgba(80, 73, 70, 0.25);
	}
	.gnav2 li:last-child a{
		border: none;
}
	.nav_contact a{

	}
}
@media screen and (min-width: 1025px) and (max-width: 1330px) {
	header .logo{
		width: 200px;
	}
	.nav_contact a{
		width: 110px;
        font-size: 1.4rem;
	}
	.select_lang{
		width: 100px;
        font-size: 1.4rem;
	}
	header .gnav .mid{
		font-size: 1.6rem;
	}
	.gnav_s{
/*		width:90px!important;
		font-size: 10px;*/
	}
}
@media screen and (min-width: 1025px) {
    .gnav_s a:hover{
        opacity: 1;
        
		background: #003876;
		color: #fff;
    }
    .sp-logo{
        display: none;
    }
}
@media screen and (max-width: 1024px) {
	.gnav{
	}
	.gnav>li{
		border-top: 1px solid #ccc;
	}
	.gnav .mid, .gnav>li>a{
		font-size: 16px;
		height: 50px;
		display: flex;
		align-items: center;
		padding: 0 10px;
		font-weight: bold;
		position: relative;
	}
	.gnav_contact{
		background: #194375;
		color: #fff;
		border-top: none;
	}

	.gnav .mid:before{
		content: "";
		display: block;
		position: absolute;
		width: 13px;
		height: 8px;
		background: url(?wp/wp-content/themes/daiwa_theme/img/sp_nav_arw.svg);
		background-size: contain;
		top: 20px;
		right: 10px;
		transition: .3s;
	}
	.gnav .mid.active:before{
		transform: rotate(180deg);
	}
    .gnav .mid.no_snav:before{display: none;}
	.gnav_s{
		border-top: 1px solid #ccc;
		display: none;
	}
	.gnav_s ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		padding: 26px 10px;
	}

	.gnav_s li{
		width: 47%;
		line-height: 1;
		font-size: 14px;
		white-space: nowrap;
	}
	.gnav_s li:nth-of-type(n+3){
		margin-top: 22px;
	}
	.gnav_s li.sub a{
		padding-left: 10px;
		position: relative;
	}
	.gnav_s li.sub a:before{
		content: "";
		display: block;
		position: absolute;
		left: 0;
		top: 50%;
		width: 5px;
		height: 1px;
		background: #333;
	}
	.nav_medical{
		background: #F2F7FF;
	}
	.nav_medical .mid{
		color: #0c2a4d;
	}
	.nav_medical .mid img{
		width: 12px;
		margin-right: 10px;
		margin-bottom: 0.1em;
	}

	.nav_medical .gnav_s a{
	}

	.gnav2{
		padding-right: 80px;
		display: flex;
		height: 100%;
	}
    .gnav2.pc{display: none!important;}
    .gnav2.sp{display: flex!important;}
	.gnav2 .nav_contact a{
		background: #194375;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 50px;
		height:100%;
		line-height: 1;
	}
	.gnav2.sp li{
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.gnav2.sp li a{
		display: flex;
		align-items: center;
		gap: 17px;
	}
	.gnav2.sp li a:after{
		content: "";
    display: block;
    width: 6px;
    height: 6px;
    border: 1px solid #003876;
    border-left: none;
    border-bottom: none;
    transform-origin: center;
    transform: rotate(135deg);
	}

	.gnav2 .nav_contact img{
		width: 23px;
	}

	.select_lang{
		margin-right: 15px;
		/*width: 21.3vw;
		height: 9.6vw;*/
	}
	.select_lang:before{
		right: 5px;
		top: 20px;
		width: 6px;
		height: 6px;
	}
	.select_lang p{
		font-size: 12px;
		padding-top: 18px;
		padding-right: 8px;
	}
    .column .gnav_s{width: 100%!important;}

}



/*--sp menu--*/
@media screen and (max-width: 1024px) {
	.menu_opn{
		width: 100%;
    	height: calc(100% - 50px);
    	position: fixed;
    	left: 0;
    	top: 50px;
    	z-index: 10;
    	overflow-y:hidden;
    	display: none;
	}
	.menu_opn.on{
		display: block;
		width: 100%;
    	height: 100%;
	}
	.menu_opn.off{
    	display: none;
	}

	.menu_bg{
		background-color: #fff;
		position: fixed;
		width: 100%;
		height: 100%;
		left: 0;
		top: 50px;
		z-index: -1;
		display: block;
	}

	.menu_opn .menu_inner{
		width: 100%;
		height: 100%;
		padding: 0 0 50px;
		overflow-y:scroll;
	}
	header .gnav .sp{
		display:block!important;
	}
	.gnav2-box{
		display:none!important;
	}
}



/*------------
sp ハンバーガー
------------*/
.is_gnavOpen { width: 100%; height: 100%; position: fixed; }
/* gnav背景 */
.js_gnavLayer { display: none; }
@media screen and (min-width: 1025px){
    header .bl_navTrigger { display: none; }
}
@media screen and (max-width: 1024px) {
    header .bl_navTrigger,
    header .bl_navTrigger span { display: inline-block; transition: all .4s; }
    header .bl_navTrigger {
    	position: fixed;
    	top: 0;
    	right: 0;
    	width: 50px;
    	height: 50px;
    	z-index: 999;
    }
    .is_gnavOpen header .bl_navTrigger:after {
    	display: none;
    }
    header .bl_navTrigger span {
    	width: 30px;
    	height: 2px;
    	position: absolute;
    	left: 10px;
    	top: 50%;
    	background-color: #194375;
    }
    header .bl_navTrigger span:nth-of-type(1) { margin-top: -10px; }
    header .bl_navTrigger span:nth-of-type(2) { margin-top: -1px;}
    header .bl_navTrigger span:nth-of-type(3) { margin-top: 8px; }

    header .bl_navTrigger.active span:nth-of-type(1) { transform: translateY(9px) rotate(-45deg); }
    header .bl_navTrigger.active span:nth-of-type(2) { display: none;}
    header .bl_navTrigger.active span:nth-of-type(3) { transform: translateY(-9px) rotate(45deg); }

    /* ハンバーガーメニューボタンアニメーション */
    @-webkit-keyframes active_menu_bar {
        100% { height: 0; }
    }

    @keyframes active_menu_bar {
        100% { height: 0; }
    }

}
/* ----------------------------------------------------------------------------------------------------
*  footer
* --------------------------------------------------------------------------------------------------*/
#pagetop{
	position: fixed;
	bottom: 40px;
	right: 40px;
	width: 70px;
	height: 70px;
	border-radius: 50%;
	z-index: 9;
	cursor: pointer;
	transition: .3s;
	background: #0075c2;
	color: #fff;
	padding-top: 35px;
	border:1px solid #fff;
	font-family: "Jost", sans-serif;
}
#pagetop .arw{
	display: block;
	position: absolute;
	width: 12px;
	height: 12px;
	top: 16px;
	left: 50%;
	transform: translateX(-50%);
}
#pagetop .arw:before{
	content: "";
	display: block;
	position: absolute;
	border:2px solid #fff;
	width: 100%;
	height: 100%;
	transform: rotate(45deg);
	border-right: none;
	border-bottom: none;
}
#pagetop .en{
	font-size: 1.4rem;
	line-height: 1;
	display: block;
	text-align: center;
}
@media screen and (min-width: 1501px) {
	#pagetop{
		right: 50%;
		margin-right: -710px;
	}
}
@media screen and (min-width: 769px) {
	#pagetop:hover{opacity: 0.6;}
}
@media screen and (max-width: 768px) {
	#pagetop{
		bottom: 14px;
		right: 12px;
		width: 45px;
		height: 45px;
		padding-top: 22px;
	}
	#pagetop .arw{
		width: 9px;
		height: 9px;
		top: 12px;
	}
	#pagetop .arw:before{
		border-width: 2px;
	}
	#pagetop .en{
		font-size: 10px;
	}
}

/*-----------
	foot1
-----------*/
.foot1{
	background: #ECEFF5;
	padding: 28px 0;
	margin-top: 80px;
}
.foot1 li{
	width: 186px;
}


@media screen and (min-width: 769px) {
	.foot1{
		margin-left: auto;
		margin-right: auto;
	}
}
@media screen and (min-width: 769px)  and (max-width: 999px){
	.foot1 ul{
		flex-wrap: wrap;
		justify-content: center;
	}
	.foot1 li{
		width: 33%;
		padding: 0 2%;
	}
	.foot1 li:nth-of-type(n+4){
		margin-top: 2%;
	}
}
@media screen and (max-width: 768px) {
	.foot1{
		padding: 40px 0;
        margin-top: 30px;
	}
	.foot1 ul{
		flex-wrap: wrap;
		justify-content: center;
        max-width: 370px;
		margin:  0 auto;
	}
	.foot1 li{
		width: 45.8vw;
        max-width: 171px;
	}
	.foot1 li:nth-of-type(even){
		margin-left: 3vw;
	}
	.foot1 li:nth-of-type(n+3){
		margin-top: 10px;
	}

}

/*-----------
	foot2
-----------*/
footer {
    width: 100%;
    background: #194375;
    color:#fff;
    padding-bottom: 25px;
}

.foot2{
	padding-top: 67px;
	justify-content: center;
}
.foot_logo{
	width: 272px;
    display: block;
	margin-bottom: 70px;
}
.foot_logo img{
    display: block;
}
@media screen and (max-width: 769px) {
	footer{
		
	}
}

@media screen and (max-width: 768px) {
	footer {
	    padding-bottom: 20px;
	}

	.foot2{
		padding-top: 42px;
		margin-bottom: 46px;
	}
	.foot_logo{
		width: 280px;
		margin: 0 auto 17px;
	}

}

/*-----------
	foot3
-----------*/
.foot3{
}
.copy{
	font-size: 1.2rem;
	line-height: 1;
	text-align: center;
}
@media screen and (min-width: 769px) {

}
@media screen and (max-width: 768px) {
	.copy{
		font-size: 14px;
	}
}


/*-----------
	pulldown block 
-----------*/
.pullbox{
    
}
.pullbox + .pullbox{
    margin-top: 15px;    
}
.pull_btn{
    cursor: pointer;
    position: relative;
    color: #fff;
    background: #194375;
    /*border:1px solid #194375;*/
    font-size: 2.2rem;
    font-weight: bold;
    padding: 18px 30px 15px 15px;
    line-height: 1.2;
    transition: .3s;
}
.pull_btn:before{
    content: "";
    display: block;
    position: absolute;
	right: 20px;
	top: 50%;
	width: 8px;
	height: 8px;
	border:1px solid #fff;
	border-left: none;
	border-top :none;
	transform-origin: center;
	transform: rotate(45deg);
    margin-top: -4px;
}
.pull_btn.active:before{
	transform: rotate(-135deg);
    margin-top: 0;
}
.pull_content{
    display: none;
    padding: 30px 15px 40px;
}
.pull_content{
    
}
.biobran .pull_btn{
	background: #fac83e;
}
.biobran th{
	background-color: #fac83e;
	color: #fff;
}
.nkcp th{
	background-color: #ef8200;
	border-bottom: 1px solid #FFF;
	color: #fff;
}
.kefiran th{
	background-color: #44AF35;
	border-bottom: 1px solid #FFF;
	color: #fff;
}

.nkcp tr:last-child th,
.kefiran tr:last-child th{
	border-bottom: 1px solid rgba(151, 151, 151, 0.8);
}

.biobran .table2 th, .biobran .table2 td{
	border: 1px solid #fac83e;
	vertical-align: middle;
}
.biobran .table2 th{
	border-bottom: 1px solid #fff;
}
.biobran .table2 tr:last-of-type th{
		border-bottom-color: #fac83e;
}

@media screen and (min-width: 769px) {
    .pull_btn:hover{
        opacity: 0.6;
    }

}
@media screen and (max-width: 768px) {
    .pullbox + .pullbox{
        margin-top: 15px;    
    }
    .pull_btn{
        font-size: 1.7rem;
        padding: 13px 30px 11px 11px;
    }
    .pull_btn:before{
    	right: 11px;
    	width: 8px;
    	height: 8px;
        margin-top: -5px;
    }
    .pull_btn.active:before{
        margin-top: 0;
    }
    .pull_content{
        padding: 15px 11px 23px;
    }
}

.fade-in {
	opacity: 0;
	transform: translateY(50px);
	transition: opacity 2s, transform 1.5s !important;
  transition-delay: attr(data-delay);
}
.fade-in.active {
    opacity: 1;
    transform: translateY(0px);
  }
.fade-in-left {
	opacity: 0;
	transform: translateX(-50px);
	transition: opacity 2s, transform 1.5s;
  transition-delay: attr(data-delay);
}
.fade-in-left.active {
    opacity: 1;
    transform: translateX(0px);
  }
.fade-in-right {
	opacity: 0;
	transform: translateX(50px);
	transition: opacity 2s, transform 1.5s;
  transition-delay: attr(data-delay);
}
.fade-in-right.active {
    opacity: 1;
    transform: translateX(0px);
  }




/*companyのCSS*/

#philosophy .philosophy-wrap{
	overflow: hidden;
}
#philosophy .philosophy-wrap .top-txt{
	max-width: 1040px;
	padding: 0 20px;
	margin: 0 auto 100px;
}
#philosophy .philosophy-wrap .top-txt p{
	line-height: 2;
	font-size: 2.2rem;
	text-align: center;
}
#philosophy .philosophy-wrap .philosophy-common{
	margin-bottom: 100px;
}
#philosophy .philosophy-wrap .philosophy-common .inner{
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

@media screen and (min-width: 769px) and (max-width: 1100px){
	#philosophy .philosophy-wrap .philosophy-common .inner{

	}
}

@media screen and (min-width: 769px){
	#philosophy .philosophy-wrap .philosophy-common .img{
	width: 40%;
	min-width: 320px;
	height: auto;
}
}
#philosophy .philosophy-wrap .philosophy-common .txt-box{
	width: 60%;
	height: auto;
	color: #504946;
}

#philosophy .philosophy-wrap .philosophy-common .txt-box h5{
	max-width: 515px;
	padding: 0 20px;
	margin: 0 auto;
	font-size: 3.2rem;
	margin-bottom: 40px;
	color: #0075C2;
}
#philosophy .philosophy-wrap .philosophy-common .txt-box p{
	max-width: 515px;
	padding: 0 20px;
	margin: 0 auto;
	font-size: 1.8rem;
	line-height: 1.5;
	letter-spacing: 0.1em;
	text-align: left;
}

.en #philosophy .philosophy-wrap .philosophy-common .txt-box p{
	letter-spacing: 0;
}

#philosophy .philosophy-wrap .philosophy-sec01 .inner , #philosophy .philosophy-wrap .philosophy-sec03 .inner{
	
}

#philosophy .philosophy-wrap .philosophy-sec02{
	padding: 100px 0;
	background-color: rgba(196, 219, 243, 0.3);
}
#philosophy .philosophy-wrap .philosophy-sec02 .inner{
	
	justify-content: flex-start;
}
@media screen and (max-width: 768px) {
	#philosophy .philosophy-wrap .top-txt{
		margin-bottom: 90px;
	}
	#philosophy .philosophy-wrap .philosophy-common .txt-box{
		max-width: initial;
		width: 100%;
		margin-bottom: 0;
	}
	#philosophy .philosophy-wrap .top-txt p{
		font-size: 1.6rem;
	}
	
	#philosophy .philosophy-wrap .philosophy-common .inner{
		flex-direction: column;
		padding: 0 20px;
		gap: 25px;
	}
	#philosophy .philosophy-wrap .philosophy-sec02{
		padding: 50px 0;
	}
	#philosophy .philosophy-wrap .philosophy-sec02 .inner{
		flex-direction: column-reverse;
	}
	#philosophy .philosophy-wrap .philosophy-common .txt-box h5{
		max-width: initial;
		font-size: 2.1rem;
		margin-bottom: 30px;
	}
	#philosophy .philosophy-wrap .philosophy-common .txt-box p{
		max-width: initial;
		font-size: 1.3rem;
	}
	#philosophy .philosophy-wrap .philosophy-common .img{
		max-width: initial;
	}
}

#company th{
	color: #666665;
}

.footer-margin{
	margin-bottom: 90px;
}
@media screen and (max-width: 768px) {
	.footer-margin{
		margin-bottom: 60px;
	}
}

/*メッセージ*/

.message_ttl_small {
	text-align:left;
	display:inline-block;
}

/*ネットワーク*/

#network .wrap{
	max-width: 1000px;
	margin: 0 auto;
}
#network .wrap .top-txt-box{
	margin-bottom: 85px;
}
#network .wrap .top-txt-box h3{
	font-size: 2rem;
	line-height: 1.75;
	margin-bottom: 45px;
	font-weight: bold;
}
#network .wrap .top-txt-box p{
	font-size: 1.6rem;
	line-height: 1.75;
	letter-spacing: 0.01em;
}
#network .wrap .title-box{
	margin-bottom: 80px;
}
#network .wrap .title-box h2{
	font-size: 3rem;
	color: #0075C2;
}
#network .wrap .title-box p{
	font-size: 2.2rem;
	color: #0075C2;
	font-family: "Jost", sans-serif;
}
#network .wrap .intelligence-box{
	margin-bottom: 80px;
}
#network .wrap .intelligence-box h4{
	position: relative;
	color: #0075C2;
	font-size: 1.8rem;
	margin-bottom: 1em;
	font-weight: bold;
	padding: 15px 0;
}
#network .wrap .intelligence-box h4:before{
	position: absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	content: "";
	display: block;
	width: 100vw;
	height: 100%;
	background-color: rgba(196, 219, 243, 0.3);
	z-index: -1;
}

#network .wrap .intelligence-box h4 span{
	font-family: 'Jost', sans-serif;
	margin-left: 0.2em;
	font-weight: 500;
}
#network .wrap .intelligence-box p{
	font-size: 1.8rem;
	font-weight: 500;
	position: relative;
	padding-left: 1em;
}
#network .wrap .intelligence-box p span{
	margin-left: 1em;
	font-family: 'Jost', sans-serif;
	font-weight: 400;
}

#network .wrap .intelligence-box p:before{
	content: "";
	width: 5px;
	height: 5px;
	background-color: #333;
	border-radius: 50px;
	display: block;
	position: absolute;
	top: 1em;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}


@media screen and (max-width: 768px) {
	#network .wrap .top-txt-box{
		margin-bottom: 60px;
	}
	#network .wrap .top-txt-box h3{
		font-size: 2rem;
		margin-bottom: 20px;
	}
	#network .wrap .top-txt-box p{
		font-size: 1.6rem;
	}
	#network .wrap .title-box{
		margin-bottom: 40px;
	}
	#network .wrap .title-box h2{
		font-size: 2.2rem;
	}
	#network .wrap .title-box p{
		font-size: 1.8rem;
		color: #0075C2;
	}
	#network .wrap .intelligence-box{
		padding: 40px 0;
	}
	#network .wrap .intelligence-box h4{
		font-size: 1.6rem;
	}
	#network .wrap .intelligence-box p{
		font-size: 1.6rem;
	}
}


/*link追加*/
#link {
	padding: 40px 10px 0;
}
#link .wrap{
	max-width: 1000px;
	margin: 0 auto;
	padding: 0;
}
#link .wrap .top-sec{
	margin-top: 100px;
	margin-bottom: 115px;
}
@media screen and (max-width: 768px){
	#link .wrap .top-sec{
		margin-top: 0;
	}
}
#link .wrap .top-sec ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 20px;
}
#link .wrap .top-sec ul li{
	max-width: 310px;
	width: 100%;
	
}
#link .wrap .top-sec ul li a{
	display: block;
}
#link .wrap .top-sec ul li a:hover{
	opacity: 1;
}
#link .wrap .top-sec ul li a:hover .img img{
	opacity: 1;
	transform: scale(1.2);
}

#link .wrap .top-sec ul li a p:before{
		position: absolute;
    bottom: 0;
    left: 0;
    content: "";
    display: block;
    width: 0%;
    height: 1px;
    background-color: #0075c2;	
}
#link .wrap .top-sec ul li a:hover p:before{
	width: 100%;
}
#link .wrap .top-sec ul li a:hover p{
	color: #0075c2;
}

#link .wrap .top-sec ul li a .img{
	width: 100%;
	height: 220px;
	border: 1px solid rgba(102, 102, 102, 0.25);
	background-color: #fff;
	border-radius: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	margin-bottom: 20px;
}
#link .wrap .top-sec ul li:first-child a .img img{
	max-width: 245px;
}
#link .wrap .top-sec ul li a .img img{
	transition: transform .6s ease;
	max-width: 290px;
	height: auto;
}
#link .wrap .top-sec ul li a p{
	position: relative;
	display: flex;
	align-items: center;
	gap: 10px;
	width: fit-content;
	margin: 0 auto;
	font-size: 2rem;
	color: #504946;
}
#link .wrap .top-sec ul li a p:after{
	content: "";
    display: block;
    width: 6px;
    height: 6px;
    border: 1px solid #666666;
    border-left: none;
    border-bottom: none;
    transform-origin: center;
    transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
	#link .wrap .top-sec ul{
		justify-content: center;
		gap: 40px;
	}
	#link .wrap .top-sec ul li{
		max-width: initial;
	}
	#link .wrap .top-sec ul li a .img img{
		max-width: initial;
		width: 70%;
	}
}
#link .wrap .link-sec-box{
	padding-bottom: 60px;
	margin-bottom: 65px;
	border-bottom: 1px solid rgba(102, 102, 102, 0.25);
}
#link .wrap .link-sec-box:last-child{
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}
#link .wrap .link-sec-box h3{
	color: #0075C2;
	font-size: 2.8rem;
	margin-bottom: 1em;
	color: #333;
}
#link .wrap .link-sec-box .link_ico{
	color: #605C5E;
	text-decoration: initial;
}

.medical-btn{
	width: 340px;
}
.medical-btn02{
	width: 380px;
}
@media screen and (max-width: 768px){
	.medical-btn{
		width: 340px;
	}
	.medical-btn02{
		width: 360px;
		font-size: 1.6rem;
	}
}
.contact-link{
	color: #0075C2;
}
.contact-link:hover{
	border-bottom: 1px solid #0075C2;
	opacity: 1;
}
.img-70{
	display: block;
	width: 70%;
	margin: 0 auto;
}
@media screen and (max-width: 768px){
	.img-70{
		width: 100%;
	}
}

#product h3.ttl2 {
	margin-bottom: 30px !important;
	padding-bottom:0;
}
#product section .column0:first-child h3{
	position: relative;
	color: #fff;
}

#product .biobran .column0:first-child h3:before{
	content: "";
	display: block;
	position: absolute;
	width: 100vw;
	height: 100%;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	background-color: #fac83e;
	z-index: -1;
}


#product .nkcp .column0:first-child h3:before{
	content: "";
	display: block;
	position: absolute;
	width: 100vw;
	height: 100%;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	background-color: #ef8200;
	z-index: -1;
}

#product .kefiran .column0:first-child h3:before{
	content: "";
	display: block;
	position: absolute;
	width: 100vw;
	height: 100%;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	background-color: #44AF35;
	z-index: -1;
}





.product_child .ttl2{
		margin-bottom: 30px !important;
}
.product_child .img-mt20{
	margin: 20px auto 0;
}

.product_child  .ttl3{
	margin-bottom: 10px !important;
}
.product_child .table2{
	margin-bottom: 40px !important;
}
#product .wrap .ttl3{
	margin-bottom: 10px;
}
.biobran .ttl3{
	color: #fac83e;
}
.nkcp .ttl3{
	color: #ef8200;
}
.kefiran .ttl3{
	color: #44af35;
}
.weight-400{
	font-weight: 400 !important;
}
.weight-500{
	font-weight: 500 !important;
}


#news .news-single-date{
	line-height: 1;
    margin-bottom: 0.7em;
    font-size: 1.4rem;
	margin-right: 5px;
}
#news .news-single-cate{
	line-height: 1;
    margin-bottom: 0.7em;
    font-size: 1.4rem;
	padding: 3px 10px;
	color: #fff;
}

.news-single .news-category-list{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 20px;
}

.news-single .news-category-list li a{
	display: block;
	padding: 3px 10px;
	color: #fff;
	font-size: 1.4rem;
}

.archive-top-img{
	width: 100%;
	height: auto;
	display: block;
	margin-bottom: 20px;
}
.archive-top-img img{
	width: 100%;
	height: auto;
}
.archive-health{
	background-color: #E9F3E2;
	margin-bottom: 0;
	padding-bottom: 90px;
}
.archive-doctor{
	background-color: #F9EDEB;
	margin-bottom: 0;
	padding-bottom: 90px;
}
@media screen and (max-width: 768px){
	.archive-health, .archive-doctor{
		margin-bottom: 0;
		padding-bottom: 60px;
	}
}

.news-single .backli_selectbox option{
	color: #000;
}