@charset "UTF-8";
/*
 * Theme Name: JP-PEAKS - 山梨大学
 * Theme URL: https://www.j-peaks.yamanashi.ac.jp
 * Description: This is our original theme for J-PEAKS - UNIVERSITY OF YAMANASHI 
 * Author: UNIVERSITY OF YAMANASHI
 * Author URL: https://www.yamanashi.ac.jp
 * Version:1.0
 */

/* 基本色 CSS カスタムプロパティ */
:root {
	--main-color: #017BC1;/*・ブルー  */
    --gre-color:#C0E892;/*・ライトグリーン  */
    --gre1-color:#F5FFE8;/*・スーパーライト・グリーン  */
    --gre2-color:#5DAF00;/*・ダーク・グリーン  */
    --gre3-color:#9CD55B;/*・グリーン  */
    --blu-color:#73C1ED;/*・ライトブルー */
     --blu2-color:#017BC1;/*・ダークブルー  */
    --slgray-color:#F5F5F5;/*・スーパーライト・グレー  */
    --black-color:#121212;/*・ブラック  */
}
/*
color:var(--main-color);/*・ブルー
color:var(--gre-color);/*・ライトグリーン
color:var(--gre3-color);/*・グリーン
color:var(--gre2-color);/*・ダーク・グリーン
color:var(--slgray-color);/*・スーパーライト・グレー
color:var(--black-color);/*・ブラック
*/

/* ----------------------------------------
* メディアクエリ
@media screen and (max-width: 1280px) {PC}
@media screen and (max-width: 959px){タブレット }
@media screen and (max-width: 768px) {タブレットmini}
@media screen and (max-width: 480px) {sp}
@media screen and (max-width: 415px) { }
------------------------------------------------*/

/* 
RESET CSS
*/

html, body, div, span, object, iframe,title-box-con
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;
    vertical-align:baseline;
    background:transparent;
}
html{
	margin: 0;
	padding: 0;
	height: 100%;
	width: 100%;
	overflow-x: hidden;
}
body {
  font-family: 'Noto Sans JP', "游ゴシック Medium", "Yu Gothic Medium","游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN",sans-serif;
        color:#121212;
    line-height:1;
    font-size: 100%;
    font-weight: 400;
}

body {
        background: #F5F5F5;
    }
body.home {
        background: #FFF;
    }

/* 基本設定： フォントサイズ */

@media all and (max-width: 480px) {
	:root {
		font-size: 0.9rem;
	}
}

@media all and (min-width: 481px) and (max-width: 767px) { 
	:root {
		font-size: 1rem;
	}
}
@media all and (min-width: 768px) and (max-width: 1280px) { 
:root {
font-size: 1.05rem;
        }
    }
@media screen and (min-width: 1281px) {
	:root {
		font-size: 1.rem;
	}
}

*, *:before, *:after {
  box-sizing: border-box;
}

h1, h2, h3, h4, h5 {font-weight: 500;line-height: 1.5}

p {
font-weight: 400;
margin: 0 0 1em;
padding: 0;
line-height: 1.8;
font-size: 3rem;
}

p.lead {font-weight: 400; margin: 0 0 1rem; padding:0;line-height: 1.6;font-size: 1rem; }

li { list-style-type: none;font-weight: 400;font-size:0.9rem;line-height: 1.6;}


.wp-block-columns li { list-style-type:disc;font-weight: 500;font-size:0.95rem;line-height: 2;margin-left: 2em;}

figcaption{line-height: 1.5}

dl,dt,dd { margin: 0; padding: 0; }
img {border: 0; line-height: 0; vertical-align: bottom;max-width: 100%;}
svg { vertical-align: bottom; }
em {font-weight: bold; font-style: normal;}
form { margin: 0; padding: 0; }
label { margin: 0; padding: 0;}
input.btn { margin: 0 0.5em; padding: 0 1em; }

 a:hover img {
  opacity:0.7;
  filter:alpha(opacity=70);
  -ms-filter: “alpha( opacity=70 )”;
}

img {
    max-width: 100%;
    height: auto;
    width /***/:auto;　/*IE8のみ適用*/
}

nav ul {
    list-style:none;
}

ol {
  margin-left: 2em;
}

.wp-block-columns ol li{
  list-style:decimal; 
}


.clear {
  clear: both;
}


/* 
clearfix
*/

.clearfix::after {content: "";display: table;clear: both;}

a,
a:link,
a:visited {
outline: none;
transition: 0.3s;
-webkit-transition: 0.3s;
-moz-transition: 0.3s;
-o-transition: 0.3s;
-ms-transition: 0.3s;
color:var(--black-color);
text-decoration: none;
}


a:hover{
color:#08c;
text-decoration: none;
}


.single .main a,
.single .main a:link{
color:#08c;
text-decoration: none;
}
.single .main a:hover,
.single .main a:active{

text-decoration: underline;
color:#08c;
}

input{
transition: 0.3s all ease-in-out;
-webkit-transition: 0.3s all ease-in-out;
-moz-transition: 0.3s all ease-in-out;
-o-transition: 0.3s all ease-in-out;
-ms-transition: 0.3s all ease-in-out;
}

.small {
font-size: 0.8em;
}
.smaller {
  font-size: 0.9em;
}

.belong {font-size: 0.85em;line-height: 2}


.large {
  font-size: 1.8rem;
}
.red {color:#E0001F;}

sup,
sub { height: 0; line-height: 1; position: relative; vertical-align: baseline; }
sup { bottom: 1ex; }
sub { top: .5ex; }

p.mb5,
.mb5{margin-bottom: 5px;}
p.mb10,
.mb10 {margin-bottom: 10px;}
p.mb15,
.mb15 {margin-bottom: 15px;}
p.mb20,
.mb20 {margin-bottom: 20px;}
p.mb30,
.mb30 {margin-bottom: 30px;}
p.mb40,
.mb40 {margin-bottom: 40px;}
p.mb50,
.mb50 {margin-bottom: 50px;}
p.mb70,
.mb70 {margin-bottom: 70px;}
p.mb100,
.mb100 {margin-bottom: 100px;}
.mt10 {margin-top: 10px;}
.mt20 {margin-top: 20px;}
.mt30 {margin-top: 30px;}

hr {
border : 0; height: 1px; background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.00), rgba(0, 0, 0, 0));  margin:30px 0;
}


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

@media (min-width: 769px) {

.alignright {
  float: right;
  margin-left: 15px;
  margin-bottom: 15px;
}

.alignleft {
  float: left;
  margin-right: 15px;
  margin-bottom: 15px;
}

.aligncenter {
  clear: both;
  margin-left: auto;
  margin-right: auto;
  display: block;
}



}
@media (min-width: 480px) {.sp-br {
  display: none;
}}
/*===============================
 /*レイアウト
===============================*/

.wrapper{
width:100%;
	 max-width: 1280px;
          margin-left: auto;
          margin-right: auto;  
}
.pickup .wrapper{
	 max-width: 980px;
}

@media screen and (min-width: 769px) {
.wrapper {
padding: 0 20px;
}
}

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


.wrapper{
          padding: 0 13px;
}
}

/* ----------2column---------- */


.container {
width:100%;
max-width:1280px;
margin:-50px auto;
padding:0 15px;
}

.container {
display: flex;
z-index: 100;
}

.container .main-wrapper{
flex:1 1 1000px;
padding: 20px 50px 50px;
background: #fff;
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
  box-shadow: 5px 5px 10px -5px rgba(0,0,0,0.2);
  }
  
.container .sidebar{
flex:0 0 280px;
background: #fff;
  border-bottom-right-radius: 10px;
  box-shadow: 5px 5px 10px -5px rgba(0,0,0,0.2);
}


@media screen and (max-width: 1280px){
.container {
display: block;
}
.main-wrapper{padding:50px 50px 0;}
.container .main-wrapper{
padding: 30px;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  margin-bottom: 15px;
  }
  .container .sidebar{
  border-bottom-right-radius: 0px;
  box-shadow: 0;
  margin-bottom: 100px;
}
}

@media screen and (max-width: 769px){
.container .main-wrapper{padding: 20px;
}
}
@media screen and (max-width: 480px){
.container {
padding:0 5px;
}
.container .main-wrapper{padding: 10px;
}
}





/* ----------end---------- */


.half{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.half div{
flex:0 0 48%;
}

/* ----------loadWrap---------- */
.loadWrap{
	width: 100%;
	height: 100%;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 20001;
}
.loadWrap img{
	width: 60px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -30px;
	margin-left: -30px;
}




/*===============================
 /* ヘッダー
===============================*/


.fixed{
position: fixed;
top: 0;
left: 0;
}


#header {
	background-color:transparent;
    width: 100%;
    box-shadow: 0 2px 3px rgba(200,200,200,0.50);
    z-index: 100;
    padding: 0 70px;
}
#header.fixed{
	background-color:#fff;
}

.header-top {
     display: flex;
     justify-content:space-between;
     padding: 17px 0px 15px;}


     
/* ロゴマーク */
#header h1{
margin: 0;
line-height: 0;
}

#header img.bg-white{
	display: none;
}
#header.fixed img.bg-black{
	display: none;
}
#header.fixed img.bg-white{
	display:block;
}

.header-top .boxA {flex: 0 0 350px;z-index: 9999; }
.header-top .header-nav  {flex: 1;}


@media screen and (max-width: 1280px){
.header-top .boxA {flex: 0 0 300px;padding-top: 10px;}
}

@media screen and (max-width: 959px){
#header {padding: 0 20px;}

.header-top .boxA {flex: 0 0 250px;padding-top: 10px;}

}

@media (max-width: 769px) {

.header-top .boxA {flex: 0 0 200px;padding-top: 0px;}
.header-top .language  {flex: 1;}
}

/*===============================
 /* PC ナビゲーションメニュー  770px以上
===============================*/

.header-nav  { 
margin-top: 18px;
}

.header-nav nav {
	position: relative;
	width: 100%;
	margin: 0 0 0;
		*zoom: 100;
	z-index:100;
	padding:0;
    line-height: 1;
}

.header-nav nav a:hover,
.header-nav nav a:focus {
	outline: none;
}

/* common */
.header-nav nav ul {
	position: relative;
	list-style: none;
	width:100%;
    text-align: right;
}

.header-nav nav ul li {
	position: relative;
    display: inline-block;
	text-align: center;
	margin-bottom: 0px;
    margin-left: 0;
    /*
    width:13%;
    */
padding: 0 15px;
}

.header-nav nav ul li a:link,
.header-nav nav ul li a {
	display: inline-block;
	font-size: 1em;
        line-height: 1.4;
	font-weight:500;
    letter-spacing: 0.05rem;

}

.fixed .header-nav nav ul li a:link,
.fixed .header-nav nav ul li a {
    color: #333;
}

.header-nav nav ul li a:hover {
	text-decoration: none;
}

.header-nav nav ul li a:hover {
	color: #08c;
}

.header-nav nav ul li.current-menu-item a {
	color: #08c;
}

/* ----------dorop down---------- */

.header-nav nav ul ul {
	position: absolute;
	top: 120%;	
	left: -0px;
}

.header-nav nav ul ul li {
	float: none;
	margin: 0;
	width: 240px;
	text-align: left;
    padding: 0;
}

.header-nav nav ul li ul.sub-menu li a {
display: block;
	padding:13px 7px 13px 7px;
	color: #FFF;
    font-size: 0.7rem;
    	background-color: rgba(29,115,187,0.90);
        width: 100%;
}

.header-nav nav ul li ul.sub-menu li a:hover {
	color: #FFF;
    background-color: rgba(29,115,187,0.75);
}


.header-nav nav ul ul li:not(:first-child) {
	border-top: 1px solid rgba(226,226,226,0.70);
}


.header-nav nav ul ul ul {
	position: absolute;
	top: 0px; 
	left: 100%;
}


#menu ul ul {
visibility: hidden;
	opacity: 0;
	transition: .3s ease-in-out;
	transform: translateY(10px);
	width: 100%;/*ドロップボックスの幅*/
}

#menu ul li:hover > ul {
	visibility: visible;
	opacity: 1;
	transform: translateY(0);
}
#menu ul ul li:hover > ul {
	transform: translateX(0) translateY(0);
}



@media (max-width: 1080px) {
.header-nav nav ul li a:link,
.header-nav nav ul li a {
	font-size: 0.7rem;
}

}

/*===============================
 /* SP ナビゲーションメニュー  768px以下
===============================*/

@media (max-width: 769px) {

/* ドロップダウンを非表示にする */
#menu	{display: none}

}

/*===============================
/*ハンバーガー*/
/* ===============================*/

@media screen and  (min-width: 769px) {
	#fat .hamburger .hamburger__icon {
		display: none;
	}
}

/*===============================
 /*language 外国語
===============================*/


.language {
position: absolute;
top:5px;
right: 90px;
z-index: 10;
}



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

.language {
right: 40px;
}

}

@media (max-width: 769px) {

.language {
top:18px;
right: 50px;
}

}
/*===============================
 /*button ボタン 青色背景
===============================*/
.button-head {
display: inline-block;
    margin:0 auto;
    padding: .4em 1em;
    border: none;
    border-radius: 3px;
    background-color: #017BC1;
    color: #fff;
    font-weight: 500;
    font-size: 0.6em;
    letter-spacing: 0.12em;
}
.button-head a {

    color: #fff;

}

.button-head:hover {
    background-color: #0094E9;
}



/*===============================
 /*button ボタン 白色背景
===============================*/

.button-more {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 180px;
    margin: 0 auto;
    padding: .6em 2.5em .6em 1.5em;
    border: 1px solid #ccc;
    border-radius: 5px;
    background-color: #fff;
    color:var(--main-color);
    font-size: 0.8em;

}


.align-right .button-more,
.latest .button-more {margin: 0 0 0 auto;}



.button-more::after {
    position: absolute;
    right: 1.5em;
    transform: translateY(-50%);
    transform-origin: left;
    width: 1.3em;
    height: .5em;
    background-color: var(--main-color);
    clip-path: polygon(0 100%, 100% 100%, 70% 40%, 70% 90%, 0% 90%);
    content: '';
    transition: transform .3s;
}

.button-more:hover::after {
    transform: translateY(-50%) scaleX(1.4);
    
}

/************************************************
*HOMEコンテンツ
************************************************/

.home .hero{ z-index: 1;position: relative;padding:40px 0;margin-top: 0px;}

.home .vision {padding:60px 0;}

.latest {background-color:var(--slgray-color);padding:100px 0 80px;}


.pickup {background-color:var(--gre1-color);padding:80px 0;}


@media screen and (max-width: 959px){
.home .latest {padding: 50px 0;}
  }
  
@media screen and (max-width: 769px){
.home .latest {padding: 30px 0;}
  }
  
@media screen and (max-width: 480px) {
.home .latest {padding: 20px 0;}
}

/*===============================
 /*Hero
===============================*/


/* ----------------------------------------
/* *Slick Slider
---------------------------------------- */
/*slick setting*/
.slick-prev:before,
.slick-next:before {
    color: #000;
}

.lazy-item {
width:100%;
	margin: 0 auto;
    opacity: 0;
    transition: 3s;
    padding: 0;
    z-index: 2;
}

.lazy-item img{
    width:inherit;
height: auto;
object-fit: cover;
z-index: 3;
border-radius: 30px;
}

@media (max-width: 768px) {
.lazy-item img {
height: 600px;
}
.lazy-item img{
border-radius: 20px;
}
}
@media (max-width: 480px) {
.lazy-item img {
height: 500px;
}
.lazy-item img{
border-radius: 15px;
}

}

 /*---catch---*/

.catch {
  position: absolute;
  top: 12%;
  left: 50%;
  transform: translateX(-50%);
z-index: 4;
}
.catch2 {
  position: absolute;
  width:90%;
  max-width: 800px;
  top: 70%;
left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
z-index: 4;
padding: 0 ;
}

.catch h1{font-size: 2.5em;line-height: 1;margin-bottom: 0.2em;color:#fff;
  font-weight: 600;
  font-style: normal;}
  


@media (max-width: 1024px) {
.catch {
top:80px;
}
.catch2 {
top:60%;
}
.catch h1{font-size: 3em;}
}

@media (max-width: 768px) {
.catch {
top:150px;
}

.catch h1{font-size: 2em;}
}
@media (max-width: 480px) {
.catch {
top:150px;
}
.catch2 {
top:55%;
}
.catch h1{font-size: 1.7em;}
}


.slick-initialized{
    opacity: 1;
}


/*===============================
 /*pickup
===============================*/

.pickup-boxes {
display:flex;
justify-content: space-between;
}

.pickup-boxes .pickup-box{
flex:0 0 45%;
background: #fff;
padding:15px;
border: 1px solid #ddd;
border-radius: 15px;
box-shadow: 0 0 3px rgba(200,200,200,0.50);
display: flex;
  flex-direction: column;
}
.pickup-boxes .pickup-box button{
margin-top: auto;
}
.pickup-boxes .pickup-box h3{
font-size:1.5em;
font-weight: 500;
margin: 12px 0 10px;
text-align: center;
color:var(--gre2-color);
}
.pickup-boxes .pickup-box h4{
font-size:1em;
font-weight: 500;
margin: 0 0 10px;
}


@media (max-width: 480px) {
.pickup-boxes {
display:block;
}
.pickup-boxes .pickup-box{
margin: 0 0 15px;
}
}


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

 Titles

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

.home .pickup h2, 
.home .vision h2 {
    font-size:2rem;
    font-weight: 600;
    text-align:center;
    margin-bottom: 1em;
    color:var(--main-color);
}
.home .pickup h3,
.home .vision h3 {
    font-size:  1.2em;
    font-weight: 500;
    text-align:center;
    margin-bottom: 1.5em;
}

.strong p strong{
    color:var(--gre2-color);
    font-weight: 600;
}
@media screen and (max-width: 1280px) {
.home .pickup h2, 
.home .vision h2 {
    font-size:1.8rem;
}
.home .pickup h3,
.home .vision h3 {
    font-size:  1.1em;
    }
    }
    @media screen and (max-width: 768px) {
    .home .pickup h2, 
    .home .vision h2 {
    font-size:1.6rem;
}
.home .pickup h3,
.home .vision h3 {
    font-size:  1em;
    }
    }
@media screen and (max-width: 480px) {
.home .pickup h2, 
.home .vision h2 {
    font-size:1.5rem;
}
.home .pickup h3,
.home .vision h3 {
    font-size:  0.9em;
    font-weight: 600;
}
}



.main-wrapper p a{
  color:#08c;
}
.main-wrapper p a:hover{
  text-decoration: underline;
}
.single .main-wrapper  h1, 
.main-wrapper  h2 {
  position: relative;
  padding: 1rem .5rem;
  margin-bottom: 2rem;
}
.single .main-wrapper  h1:after, 
.main-wrapper h2:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4px;
  content: '';
  border-radius: 2px;
  background-image: -webkit-gradient(linear, right top, left top, from(#73C1ED), to(#9CD55B));
  background-image: -webkit-linear-gradient(right,#73C1ED  0%, #9CD55B 100%);
  background-image: linear-gradient(to left, #73C1ED 0%, #9CD55B 100%);
}
.archive h2 {
  margin-bottom: 1rem;;
}
.archive h2:after {
  height: 0px;
  border-radius:0px;
}

.main-wrapper  h3{
  color: #222;
  padding: 0.35em;
  border-top: solid 2px #A9D7F1;
  border-bottom: solid 2px #C0E892;
  background: -webkit-repeating-linear-gradient(-45deg, #F7FBFF, #F7FBFF 3px,#F9FEF2 3px, #F9FEF2 7px);
  background: repeating-linear-gradient(-45deg, #F7FBFF, #F7FBFF 3px,#F9FEF2 3px, #F9FEF2 7px);
  margin-bottom: 1.5rem;
}
.main-wrapper  h4{
display: inline-block;
   padding:0 .8em .2em 0;
    border-bottom: 3px dotted #C0E892;
    background-color: #ffffff;
    color: #333333;
  margin-bottom: 1rem;
}
.single .container h1 {font-size:1.4rem;margin-bottom: 2em;}



@media screen and (max-width: 480px) {
.single .container h1 {font-size:1.1em;margin-bottom: 1.5em;}
.main-wrapper  h3{font-size:1em;margin-bottom: 1.5em;}
}
/* ---------------------------------------------------------------

 font-size

------------------------------------------------------------------- */
ul.wp-block-list li { list-style-type:disc;font-weight: 400;font-size:1.15rem;line-height: 1.8;margin: 0 0 0 2em;}

.catch2 p{font-size: 1.15rem;font-weight:400;color:#fff;line-height: 1.5;}
.home .vision p {
    font-size:  1.15rem;
}
.main-wrapper p{
  font-size: 1.15rem;
}
.news-box_right h2 {font-size:1em;font-weight: 400;}
.pickup-boxes .pickup-box p{
font-size:0.94em;
font-weight: 400;
margin: 0 0 1rem;
line-height: 1.5;
}
.archive .latest article h2 {
	font-size: 1rem;
    margin: 7px 0 5px;
    font-weight: 500;
}

/* ***********************************************************************
 ページheaderタイトル
*********************************************************************** */

.title-wrap {
background-image:url("assets/images/bg-head.png");
 background-repeat:no-repeat;
 background-size: cover;
}
.page-id-20 .title-wrap,
.page-id-2 .title-wrap {
 padding-bottom: 20px;
}


.title-wrap .wrapper{display: flex;
justify-content:flex-start;
align-items: center;
height: 200px;
}

.title-wrap .wrapper div{
flex:1 0 300px;
height: 100px;
}
.title-wrap .wrapper h1,
.title-wrap .wrapper h2{
color:#fff;
font-size: 1.6em;
font-weight: 600;
text-shadow:1px 2px 3px #017BC1;
}
.title-wrap .wrapper h3{
color:#fff;
font-size: 1em;
font-weight: 500;
text-shadow:1px 2px 3px #017BC1;
}
@media screen and (max-width: 768px) {
.title-wrap .wrapper{
height: 150px;
}
.title-wrap .wrapper h1,
.title-wrap .wrapper h2{
font-size: 1.3em;
}
}
@media screen and (max-width: 480px) {
.title-wrap .wrapper{
height: 120px;
}
.title-wrap .wrapper h1,
.title-wrap .wrapper h2{
font-size: 1em;
margin-top: 10px;
}
.title-wrap .wrapper h3{
font-size: 0.8em;
}
}


/* ----------------------------------------
* Top 新着情報
---------------------------------------- */

.news-boxes {
display: flex;
justify-content: space-between;
}


.news-boxes div.news-box_left {
flex:0 0 30%;
	margin: 0;
    padding:50px 10px 0 0;
    z-index: 5;
}




.news-boxes div.news-box_right {
flex:0 0 70%;
	margin: 0;
    padding:0;
    z-index: 5;
}

div.news-box_left .news-title{
    width: 70%;
    aspect-ratio: 1;
    margin: 0 auto;
    border-radius: 60% 75% 40% 80% / 70% 70% 60% 65%;
    animation: fluid-anim 20s infinite;
    background:var(--gre-color);
    padding-top: 50px;
}
@keyframes fluid-anim {
    0%    { border-radius: 65% 35% 51% 45% / 57% 50% 55% 45%; }
    12.5% { border-radius: 60% 75% 40% 80% / 70% 70% 60% 65%; }
    25%   { border-radius: 55% 95% 65% 90% / 75% 65% 85% 70%; }
    37.5% { border-radius: 70% 40% 50% 45% / 60% 30% 60% 40%; }
    50%   { border-radius: 55% 95% 65% 90% / 75% 65% 85% 70%; }
    62.5% { border-radius: 70% 40% 50% 45% / 60% 30% 60% 40%; }
    75%   { border-radius: 60% 75% 40% 80% / 70% 70% 60% 65%; }
    87.5% { border-radius: 40% 60% 55% 45% / 50% 60% 40% 50%; }
    100%  { border-radius: 65% 35% 51% 45% / 57% 50% 55% 45%; }
}

div.news-box_left h2{font-family: "Montserrat", sans-serif; font-size: 3.5em;font-weight: 500;margin-left: 30px;}
div.news-box_left h3{font-size: 1.5em;font-weight: 400;margin-left: 30px;}

@media screen and (max-width: 768px) {
.news-boxes {
display: block;}
.news-boxes div.news-box_left {
	margin: 0;
    padding:5px 0 0 0;
}
div.news-box_left .news-title{
    width: 30%;
    aspect-ratio: 1;
    margin: 0 auto 10px;
    border-radius: 60% 75% 40% 80% / 70% 70% 60% 65%;
    animation: fluid-anim 20s infinite;
    background:var(--gre-color);
    padding-top: 0px;
}
div.news-box_left h2{font-size:2em;margin-left: 10px;}
div.news-box_left h3{font-size: 1em;margin-left: 10px;}

}

.news-box_right article {
display: block;
border:1px solid #ddd;
padding: 8px 30px 18px;
margin-bottom: 20px;
background-color: #fff;
border-radius: 7px;
box-shadow: 0px 0px 5px rgba(193,193,193,0.30);
}

p.postinfo {margin-bottom: 1px;}

/* ---- 日付 --------*/
.latest-news_date {
font-size: 0.8em;
margin-right: 1em;
}

.single p.latest-news_date{
font-size: 0.8em;
text-align: right;
margin-right: 1em;
}



span.postcat  {
display: inline-block;
line-height: 1;
margin-right: 5px;
}

span.postcat a {
display: block;
font-size: 0.8em;
padding:4px 12px 5px;
line-height: 1;
border-radius: 5px;
color:#fff;
background:var(--gre2-color);
}

span.postcat  a:hover {
background:var(--gre-color);
color:var(--black-color);
}

span.class_y-peaks a {background:var(--blu2-color);}
span.class_y-peaks  a:hover {background:var(--blu-color);}





/* ----------------------------------------
* Archive 新着情報
---------------------------------------- */

.archive .latest {width:100%;background-color:#fff;padding:0;}

.archive .latest article {
display: block;
border:1px solid #ddd;
padding: 15px 30px;
margin-bottom: 20px;
background-color: #fff;
border-radius: 7px;
box-shadow: 0px 0px 5px rgba(193,193,193,0.30);
}


.archive .latest article p {
	margin-bottom: 2px;
	font-size: 0.8rem;
}

.archive .latest article a:hover {
	opacity: 0.8;
}

/************************************************
* メインコンテンツ　
************************************************/


/************************************************
* サイドバー
************************************************/


/*シングル　サイドメニュー*/
.container .sidebar li.widget {background:var(--gre2-color);
padding:20px 15px;
}


.container .sidebar li.widget h3 {
color:#fff;
border-bottom:none;
margin: 0;
font-size: 0.8rem;
font-weight: 500;
}
.container .sidebar li.widget h3:before {background: none;
  height: 0px;
}

.sidebar li.widget.widget_archive,
.sidebar li.widget.widget_categories,
.sidebar li.widget.widget_recent_entries {background: #fff;
padding: 0px;
}

.sidebar li.widget.widget_archive a,
.sidebar li.widget.widget_categories a,
.sidebar li.widget.widget_recent_entries a{
display: block;
padding: 15px 15px;
background: #fff;
border-right: solid #ccc 1px;
border-bottom: solid #ccc 1px;
border-left: solid #ccc 1px;
color:#333;
font-size: 0.9em;
}

.sidebar li.widget.widget_archive a:hover,
.sidebar li.widget.widget_categories a:hover,
.sidebar li.widget.widget_recent_entries a:hover{
background:var(--gre3-color);
text-decoration: none;
color:#fff;
}



/*Page　サイドメニュー*/
.sidebar .list-ti {background:var(--gre2-color);
padding:40px 15px;
}
.sidebar .child-list li.page-item-273,
.sidebar .child-list li.page-item-271,
.sidebar .child-list li.page-item-2  {
display: none;
}
.sidebar .child-list li a {
display: block;
padding: 15px 15px;
background: #fff;
border-right: solid #ccc 1px;
border-bottom: solid #ccc 1px;
border-left: solid #ccc 1px;
color:#333;
font-size: 0.9em;
}


.child-list  li.current_page_item a,
.sidebar .child-list li a:hover {
background:var(--gre3-color);
text-decoration: none;
color:#fff;
}

.container .list-ti h3 {
color:#fff;border-bottom:none; margin-bottom: 0em;
    font-size:1rem;
font-weight: 500;
padding-bottom: 0;
}
.container .list-ti h3:before {
  height: 0px;
  background: none;
}

.container .list-ti h4 {
color:#fff;border-bottom:none; margin-bottom: 0em;
    font-size:0.8rem;
font-weight: 400;
}

/************************************************
* フッター
************************************************/


#footer {
    background-color:var(--gre-color);
        z-index: -10;
}

#footer .footer-info {padding:60px 0 12px;text-align: center;z-index: 0}
.home #footer .footer-info {padding:12px 0 ;text-align: center;}

.footer-info  img {width: 200px;height:auto;}


@media screen and (max-width: 1280px) {#footer .footer-info {padding:15px 0 12px;}}


.foot-copyright {
padding: 17px 0 10px;
	font-size:0.6em;
   text-align: center;
   background: #000;
   color:#fff;
}

.foot-copyright p.unive {margin-bottom: 0em;
}
.foot-copyright p.unive a {color:#fff;font-size:1.5em;font-weight: 500;
}

/*===============================
/* パンくずナビゲーション*/
/* ===============================*/

.bread_crumb {
	display: flex;
	flex-wrap: wrap;
	margin: 0 auto;
	padding-top: 12px;
    padding-bottom: 14px;
    	color:rgb(120,120,120);
        font-size:16px;
}
.bread_crumb span {
font-size:14px;
	margin: 0 10px;
    color:rgb(120,120,120);
}
.bread_crumb span:first-child {
	margin-left: 0px; 
}
.bread_crumb span:last-child {
	margin-right: 0px; 
}
.bread_crumb span .current-item {
	color:rgb(180,180,180);
}

/*===============================
/* ページナビゲーション */
/* ===============================*/

.nav-links {
	text-align: center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.nav-links a,
.nav-links span {
	margin: 0 6.5px;
	width: 36px;
	height: 36px;
	border: 1px solid #d0d0d0;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	background: transparent;
}

.nav-links a {
	cursor: pointer;
}

.nav-links a:hover {
	opacity: 0.8;
}

.nav-links span {
	color: #fff;
	font-weight: bold;
	padding: 3px 7px;
	background: #1D73BB;
	border: solid 1px #1D73BB;
}
/* ================
  #page-nav
================ */

.page_navi {
  text-align: center;
  margin: 30px 0 20px;
  
}
.page_navi li {
  display: inline;
  list-style: none outside none;
  font-size: 0.8rem;

}
.page_navi li a {
  border: 1px solid rgb(102,102,102);
  text-decoration: none;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
   border-radius: 3px;
  position: relative;
  background: #0079AE;
   color:#fff;
   
}

.page_navi li a:hover {
  border: 1px solid #0079AE;
  background: #239FD6;
  color:#fff;
}
.page_navi li a:active {
  box-shadow: 0 0 3px rgba(0,0,0,0.2) inset;
  top:1px;
}

.page_navi li.current span {
  border: 1px solid rgb(153,153,153);
  color:#3B4043;
  font-weight: bold;
  border-radius: 3px;
}
.page_navi li.first span,
.page_navi li.previous span,
.page_navi li.next span,
.page_navi li.last span {
  background: rgb(248,248,248);
  border: 1px solid rgb(230,230,230);
  color: rgb(180,180,180);
  text-decoration: none;
  border-radius: 3px;
}

.page_navi li.page_nums span {
  background: rgb(102,102,102);
  border: 1px solid rgb(51,51,51);
  color: rgb(255,255,255);
}
.page_navi li a,
.page_navi li.current span,
.page_navi li.first span,
.page_navi li.previous span,
.page_navi li.next span,
.page_navi li.last span,
.page_navi li.page_nums span {
  padding: 0.25em 0.8em;
  display: inline-block;
  position:relative;
}
/* ================
.adjacent_post_links
================ */  
 
.adjacent_post_links {
width:100%;
max-width:1220px;
	margin: 50px auto;
    padding:30px  15px;
    border-top:dashed 1px #ccc;
    border-bottom:dashed 1px #ccc;
}

.adjacent_post_links ul {
    display: flex;
    align-items:center;
    font-size:0.85rem;
}

.adjacent_post_links li.next,
.adjacent_post_links li.previous {
	flex: 45%;
	max-width: 450px;

}
.adjacent_post_links li.cate-top {
flex: 10%;
text-align: center;
}
.adjacent_post_links li.cate-top img {
width: 30px;
height:auto;
}
.adjacent_post_links li.next {
text-align: right;
}


.adjacent_post_links li a {
	display: block;
	color:#333;
    text-decoration: none;
        vertical-align:middle;
        line-height: 1.3;
        font-size: 0.8em;
        
}
.adjacent_post_links li a:hover {
	color:#08c;
}

.adjacent_post_links li.previous a {
    background: url(assets/images/bg_previous_link.png) no-repeat left center;
	padding-left: 30px;
}

.adjacent_post_links li.next a {
    background: url(assets/images/bg_next_link.png) no-repeat right center;
	padding-right: 30px;
}


/*===============================
/* pagescroll*/
/* ===============================*/
.pagescroll {
	position: fixed;
	bottom: 45px;
	right: 10px;
	z-index: 20;
}
.pagescroll a:link,
.pagescroll a:visited{
	display: block;
	font-size: 1em;
	text-align: center;
	text-decoration: none;
	line-height: 38px;
	width: 40px;
	height: 40px;
	color: #fff;
		background-color:var(--main-color);/* ブルー  */
        border: 1px solid #fff;

}
.pagescroll a:hover,
.pagescroll a:active{
	color: #fff;
		background-color:var(--gre-color);/*ライトグリーン */
}


/************************************************
* 表 Table *
************************************************/

    
table  { border-collapse: collapse;
  border-spacing: 0;width:100%; margin:0 auto 10px;font-size: 0.9rem;font-weight: 400;line-height: 1.5;}

table thead td {background: rgba(250,250,250,1.00)}


table th {vertical-align: top;text-align: left; padding:15px 10px ; font-weight: 500; border: 1px #ccc solid;background: rgba(250,250,250,1.00)}

table td{vertical-align: top;text-align: left; padding:15px 10px; font-weight: 400; border: 1px #ccc solid;}

table a,
table a:link {
color:#08c;
}

table a:hover,
table a:active{
text-decoration:underline;
}

.std-tb table th{width:20%;}
.std-tb table td{width:80%;}

table.contact-tb,
.table_container table  {width:100%;min-width:900px;}


/************************************************
* リスト リンク *
************************************************/

ul.link-text li {
margin-bottom: 0.5em;
list-style:disc;
}
ul.link-text li a,
ul.link-text li a:link  {
color:#08c;
}

ul.link-text li a:hover,
ul.link-text li a:active  {
text-decoration:underline;
}






/* ***********************************************************************
 Contents ページ
*********************************************************************** */




@media all and (min-width: 1320px)  { 
.float-content {
margin: -80px auto 30px;
width:100%;
max-width:1280px;
padding:60px 30px 40px;
}
}
@media all and (min-width: 768px) and (max-width: 1319px)  { 
.float-content {
margin: -80px 20px 30px;
padding:40px 30px 20px;
}
}

@media all and (max-width: 767px) {
.float-content {
margin: -80px 20px 0px;
padding:40px 30px 20px;
}
}



.half-block {
margin: 0 auto 30px;
width:92%;
max-width:1200px;
}

.half-block .half-reverse,
.half-block .half{
align-items: center;
}

.half-block .half-reverse div,
.half-block .half div{
flex:0 0 50%;
}

.half-block .text-box {padding: 20px}

.half-block .text-box a{display:inline-block;
padding:7px 15px;
background: #598F14;
border-radius: 3px;
color:#fff;
line-height: 1;
font-size: 0.8rem;}
.half-block .text-box a:hover{
background: #DB924B;
}

.photo-bar-wrapper {background:#F7F7F7;padding:100px 0 80px; }

.photo-bar {
width:92%;
max-width: 1280px;
margin: 0 auto 20px;
display: flex;
background:#fff;
box-shadow: 2px 3px 5px rgba(0,0,0,0.3);
}

.photo-thumb {flex:0 0 23%;
text-align: center;}
.photo-thumb img{width:auto;
height:100%;}
.text-bar {flex:0 0 77%; padding: 20px 20px 10px}

.text-bar h3{font-size: 1.1rem;}

/* ***********************************************************************
 お問い合わせフォーム
*********************************************************************** */
.cf-area {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 2em 0;
	border-bottom: 1px dashed #ccc;
	transition: all .3s;
}

.cf-area:last-child {
	border-bottom: none;
}

.cf-area dt {
  width: 200px;
  padding-right: 30px;
  text-align: right;
	line-height:1.5em;
}

.cf-area dd {
    flex: 1;
}

.cf-area input, .cf-area textarea {
  width: 100%;
  padding: 0.8em;
  border: none;
  background-color: #e6e6e6;
  font-size: 16px;
	resize: vertical;
	transition: all .3s;
}

.cf-area input:focus,.cf-area textarea:focus {
	outline: none;
	background: #dde2e9;
}

.cf-required {
	background: #b91e23;
	color: #fff;
	font-size: 0.8em;
	padding: 0 5px 2px;
	border-radius: 2px
}

.cf-send input {
	display: block;
	background: linear-gradient(135deg, #73C1ED 0%,#9CD55B 100%);
	width: 300px;
	height: 60px;
	margin: 30px auto 0;
	border: none;
	border-radius: 10px;
	color: #fff;
	box-shadow: 2px 5px 15px 0 rgba(0, 0, 0, .2);
	font-size: 1.3em;
	font-weight: bold;
	transition: all .3s;
}

 
 
.cf-send input:hover {
	filter: brightness(1.20);
	color: #fff;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	background-color: #fce3e3;
	border: none;
	text-align: center;
}

@media screen and (max-width:768px){
	.cf-area {
		display: block;
	}

	.cf-area dt {
    width: 100%;
		margin-bottom: 5px;
    padding-right: 0;
    text-align: left;
		line-height:1.5em;
	}
}

