/*
Theme Name: ISU Template
Theme URI: https:/i-s-u.co.jp/
Description: ISU
Version: 1.3
Author URI: https:/i-s-u.co.jp/
*/

/* RESET
----------------------------------------------------------------------------------------------------*/
* {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

a, abbr, acronym, address, applet, article, aside, audio,
b, big, blockquote, body, caption, canvas, center, cite, code,
dd, del, details, dfn, dialog, div, dl, dt, em, embed,
fieldset, figcaption, figure, form, footer,
header, hgroup, h1, h2, h3, h4, h5, h6, html,
i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav,
object, ol, output, p, pre, q, ruby,
s, samp, section, main, small, span, strike, strong, sub, summary, sup,
tt, table, tbody, textarea, tfoot, thead, time, tr, th, td,
u, ul, var, video {
	font: inherit inherit 100%/1.2;
	vertical-align: baseline;
	white-space: normal;
	text-align: left;
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	background: transparent;
}

article, aside, details, figcaption, figure, footer, header, hgroup,menu, nav, section, main { 	display: block; }
ol, ul { 	list-style: none; }
blockquote, q {	quotes: none; }
table { border-collapse: collapse; 	border-spacing: 0; }
a{text-decoration: none;}
a:link{color: var(--color-blue);}
a:visited{color: var(--color-blue);}

body {
width:100%;　height:100%　;margin: 0 auto;
background: #fff;　color:#000;　font-size:1rem;
font-family: "NotoSansCJKjp", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
font-weight: 400;
-webkit-text-size-adjust: 100%;
-webkit-font-feature-settings: "palt" 1;
font-feature-settings: "palt" 1;
line-height: 1.8;
letter-spacing: 1.5px;
}

:root {
  --color-blue: #004fed;
  --color-aqua: #f0f6ff;
}

/* GRID
----------------------------------------------------------------------------------------------------*/
.container { max-width: 1200px;	margin: 0 auto;}
.container:after,.row:after, .col:after, .clr:after, .group:after { content: ""; display: table; clear: both; }
.row { padding-bottom: 0em;}  .col { display: block;	float: left;	width: 100%;}
@media ( min-width : 1200px ) {
.gutters .col {margin-left: 2%;	}
.gutters .col:first-child {margin-left: 0; 	}
}
@media ( min-width : 980px ) {
.span_1 { width: 8.33333333333%; }.span_2 { width: 16.6666666667%; }.span_3 { width: 25%; }.span_4 { width: 33.3333333333%; }.span_5 { width: 41.6666666667%; }.span_6 { width: 50%; }.span_7 { width: 58.3333333333%; }.span_8 { width: 66.6666666667%; }	.span_9 { width: 75%; }	.span_10 { width: 83.3333333333%; }	.span_11 { width: 91.6666666667%; }	.span_12 { width: 100%; }
.gutters .span_1 { width: 6.5%; }.gutters .span_2 { width: 15.0%; }.gutters .span_3 { width: 23.5%; }.gutters .span_4 { width: 32.0%; }.gutters .span_5 { width: 40.5%; }.gutters .span_6 { width: 49.0%; }.gutters .span_7 { width: 57.5%; }	.gutters .span_8 { width: 66.0%; }	.gutters .span_9 { width: 74.5%; }	.gutters .span_10 { width: 83.0%; }	.gutters .span_11 { width: 91.5%; }	.gutters .span_12 { width: 100%; }
}
.clear{ clear: both; line-height: 0}

.sp {  display: block;}
 @media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
 .pc { display: none; }    .sp { display: none;}
}
.img-responsive {  display: inline-block;  max-width: 100%;  height: auto; vertical-align: middle;}

.pd-05emt{padding-top: 0.5em;}
.pd-1emlr{padding: 0 1em;}
.pd-5em{padding: 5em 0;} .pd-5emb{padding-bottom: 5em ;}

.mg-1em{margin: 1em 0;}.mg-1emt{margin-top: 1em;}.mg-1emb{margin-bottom: 1em;} .mg-1em-all{margin: 1em;}
.mg-2em{margin: 2em 0;}.mg-2emt{margin-top: 2em;}.mg-2emb{margin-bottom: 2em;} .mg-2em-all{margin: 2em;}
.mg-3em{margin: 3em 0;}.mg-3emb{margin-bottom: 3em;}
.mg-5em{margin: 5em 0;} .mg-5emt{margin-top: 5em;} .mg-5emb{margin-bottom: 5em;}
.mg-7em{margin: 7em 0;} .mg-7emb{margin-bottom: 7em;}

.txt01{  color:#fff;  text-align:center; line-height:200%;}
.txt02{  color:#000;  text-align:center; line-height:200%;}
.txt-blue{  color:#004fed;  text-align:center; }

.font-w700{font-weight:700;}
.font-s1{font-size:max(18px, 1vw); line-height: 1.5;}
.font-s2{font-size:max(20px, 1.6vw); line-height: 1.5;}
.font-s3{font-size:max(24px, 3.4vw); line-height: 1.5;}
.font-space{letter-spacing: 1px;}

.block{display: block;}
.txt-center{text-align: center;}
.txt-center-left{text-align: center;}
.txt-left{text-align: left;}
/*-------------Content------------*/
.main-wrap{
  width:calc(100% - 10vw);
  margin: 0 auto;
}

@media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
  .txt-center-left{text-align: left;}
  .pd-5em{padding: 1em 0;} .pd-5emb{padding-bottom: 1em ;}
  .mg-5em{margin: 1em 0;} .mg-5emt{margin-top: 1em;} .mg-5emb{margin-bottom: 1em;}
  .mg-7em{margin: 2em 0;} .mg-7emb{margin-bottom: 2em;}
 }

/*-------------FLEX & GRID------------*/
.flex {  display: flex;  flex-wrap: wrap;}
.flex._gap30 {  grid-gap: 30px;}
.flex_center { display: flex; flex-direction: column; justify-content: center; align-items: center;}
.flex_center._gap30 {  grid-gap: 30px;}
.flex_center._gap50 {  grid-gap: 50px;}
.flex_center_column {  display: flex; flex-direction: column; align-items: center;}
.flex_center_column._gap30 {  grid-gap: 30px;}
.flex_center_row {  display: flex; flex-direction: column; align-items: center; justify-content: center;}
.flex_start {  display: flex; flex-direction: column; justify-content: flex-start;}
.flex_start._gap30 {  display: flex; flex-direction: column; align-items: center; grid-gap: 30px;}
.flex_between {  display: flex; flex-direction: column; justify-content: space-between; align-items: center;}
.flex_between._gap30 {  display: flex; flex-direction: column; grid-gap: 30px;}
.flex_between._gap50 { display: flex; flex-direction: column; grid-gap: 50px;}
.flex._column {  display: flex; flex-direction: column;}
.flex._row {  display: flex; flex-direction: row;}
.flex._bottom {  margin-top: auto;  display: block;}

@media print, screen and (min-width: 62.5em) { /* -------- PC用のスタイル(1000px以上)-------- */
  .flex_center, .flex_center_row, .flex_start, .flex_between, .flex_between._gap30, .flex_between._gap50  { flex-direction: row; }
  .flex_center_row { display: flex;  align-items: center; justify-content: center; }
  .flex_start._gap30 { flex-direction: row;  align-items: flex-start; }
}


.grid {  display: grid;  align-content: center;  flex-wrap: wrap;}
.grid._grid2, .grid._grid3, .grid._grid4   { grid-template-columns: 1fr;}
.grid._gap20 { grid-gap: 20px;}
.grid._gap30 { grid-gap: 30px 30px;}
.grid._gap50 { grid-gap: 50px 50px;}

@media print, screen and (min-width: 62.5em) { /* -------- PC用のスタイル(1000px以上)-------- */
  .grid { display: grid; align-content: center; flex-wrap: wrap;}
  .grid._grid2 { grid-template-columns: repeat(auto-fit, minmax(45%, 2fr)); }
  .grid._grid3 { grid-template-columns: repeat(auto-fit, minmax(30%, 3fr)); }
  .grid._grid4 { grid-template-columns: repeat(auto-fit, minmax(22%, 4fr)); }
}
/*-------------ボタン------------*/
.button-white a {
  position: relative;
  display: flex;
  justify-content: space-around;
  align-items: center;
  color: #fff;
  background: inherit;
  margin: auto;
  max-width: 170px;
  padding: 10px 3rem 10px 25px;
  border-radius: 9999px;
  border: 1px solid #fff;
  line-height: 1.8;
  transition: 0.3s ease-in-out;
  word-break: keep-all;
}
.button-white a:after {
content: "";
position: absolute;
top: 50%;
bottom: 0;
right: 2rem;
font-size: 90%;
display: flex;
justify-content: center;
align-items: center;
transition: right 0.3s;
width: 6px;
height: 6px;
border-top: solid 2px currentColor;
border-right: solid 2px currentColor;
transform: translateY(-50%) rotate(45deg);
}
.button-white a:hover {
color: #FFF;
}
.button-white a:hover:after {
right: 1rem;
}

.button-blue a{
  position: relative;
  display: flex;
  justify-content: space-around;
  align-items: center;
  color: var(--color-blue);
  background: inherit;
  margin: auto;
  width: min(60vw, 220px);
  padding: 10px 3rem 10px 25px;
  border-radius: 9999px;
  border: 1px solid var(--color-blue);
  font-size: clamp(0.8rem, 3vw, 1rem);
  line-height: 1.8;
  transition: 0.3s ease-in-out;
  word-break: keep-all;
  text-decoration: none;
}
.button-blue a:after {
content: "";
position: absolute;
top: 50%;
bottom: 0;
right: 2rem;
font-size: 90%;
display: flex;
justify-content: center;
align-items: center;
transition: right 0.3s;
width: 6px;
height: 6px;
border-top: solid 2px currentColor;
border-right: solid 2px currentColor;
transform: translateY(-50%) rotate(45deg);
}
.button-blue a:hover {
transition: ease-in-out, .3;
}
.button-blue a:hover:after {
right: 1rem;
}



/*-------------Navi-TOP スクロール前------------*/
.Header{
	background: none;
	display: flex;
	justify-content: space-between;
	padding:5px 10px;
	position: absolute;
	width: 100%;
	z-index: 99;
	align-items: center;
}
.Cname{color:#000; padding-left:0.5rem; vertical-align: middle;  font:600 1.4rem sans-serif;}
.site-logo img{	height: 25px;	width: auto;	vertical-align: middle;}
.gnav{	vertical-align: middle; padding:20px;}
.gnav__menu{	display: flex;}
.gnav__menu__item{	margin-left: 30px;}
.Header .gnav__menu__item a{
  color: #000;
  text-decoration: none;
  position: relative;
  display: inline-block;
  text-decoration: none;
  font-weight:600;
}
.Header .gnav__menu__item a::after {
  position: absolute;
  bottom: -4px;  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #004fed;
  transform: scale(0, 1);  transform-origin: left top;  transition: transform .3s;
}
.Header .gnav__menu__item a:hover::after {  transform: scale(1, 1);}
.Header .gnav__menu__item a:hover {  color:#004fed; transition: 0.7s;}

/*-------------Navi--TOP スクロール後-------------*/
.header-change{
 background: #fff;
 display: flex;
 justify-content: space-between;
 position: fixed;
 top: -110px;
 transition: .5s;
 width: 100%;
 padding:5px 10px;
 box-shadow: 0 5px 15px 0 rgba(0, 0, 0, .15);
 align-items: center;
}
.header-change.show{top: 0; z-index:999;}
.header-change .gnav__menu__item a{	color: #000; text-decoration: none; font-weight:600;}
.header-change .gnav__menu__item a::after {
 position: inherit;
 bottom: -4px;  left: 0;
 content: '';
 width: 100%;
 height: 2px;
 background: #004fed;
 transform: scale(0, 1);  transform-origin: left top;  transition: transform .3s;  display: block;
}
.header-change .gnav__menu__item a:hover::after {  transform: scale(1, 1);}
.header-change .gnav__menu__item a:hover {  color:#004fed; transition: 0.7s;}

.Cname02{color:#000; padding-left:0.5rem; font:600 1.2rem sans-serif; vertical-align: middle;}
.logo-a{text-decoration: none;}
 @media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
.Header{flex-direction: column; padding:0; background:#fff; filter: drop-shadow(1px 1px 3px rgba(0, 0, 0, 0.2));}
.gnav{padding:0;}
.gnav__menu__item {margin:0; padding:7px; font-size: 0.8rem;}
.header-change{display:none;}
.Header .gnav__menu__item a {color:#000;}

}


/* ============================================================================================================
	 00.TOP PAGE
=============================================================================================================*/

.hero{
  background-attachment: fixed;
 }
.hero-H {
  background-image: url("../imgs/heroH-bg.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: fixed;
	background-position: center left;
	height:100vh;
	width:100%;
  display: flex;
  justify-content: start;
  align-items: center;
  padding: 0 max(1rem, 2vw);
  }
.hero-H img{	height: auto;	width: max(18em, 50vw); margin: 0 auto;}
.hero-img-sub{	width: max(20em, 30vw)!important; padding:1rem 0 2rem;}
.hero-img-WEB{	width: max(10em, 15vw)!important; padding:1rem 0 2rem;}
.hero-img-long{	width: max(20em, 40vw)!important; padding:1rem 0 2rem;}

 @media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
  .hero-H {
    background-image: url("../imgs/heroH-bg-sp.png");
    background-position: top left;
    position: relative;
    top: 40px;
	  height: 500px;
  }
  .hero-H700{height: 700px;}

}
.hero-T{
  display: flex;
  align-items: center;
  flex-direction: column;
  position: relative;
  bottom: 2px;
  padding: 7rem 1rem;
  background: var(--color-blue);
  color: #fff;
}
.hero-txt{
  font:600 'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}
.hero-txt img{
  width: min(60vw, 640px);
}
.hero-txt02{
  font:600 'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
  font-size: clamp(16px, 2vw, 60px);
  margin-top: max(1em, 2.5vw);
}
.hero-T-wrap > p{
  padding: 1rem 0;
    font-size: clamp(14px, 1vw, 40px);
    font-weight: bold;
    line-height: 1.7;
  }
.News-txt{
  background-image: url("../imgs/news-txt.png");
  background-position: top right;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
  width: 100%;
  height: 80%;
}
.BG-aqua{
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; align-content: center;
  background: var(--color-aqua);
  padding:7rem 3rem;
}
.BG-aqua-half{
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; align-content: center;
  background: var(--color-aqua);
  padding:7rem 3rem;
}
.BG-blue{
  position: relative;
  background: var(--color-blue);
  padding:7rem 3rem;
}
.BG-white{
 display: flex;
 flex-direction: row;
 justify-content: center;
 align-items: center; align-content: center;
 flex: 1 1 100%;	/*--- IEバグ 変更しない---*/
 background: #fff;
 padding:7rem 3rem;
}
.BG-white-noM{
 display: flex;
 flex-direction: row;
 justify-content: space-between;
 align-items: center; align-content: center;
 flex: 1 1 100%;	/*--- IEバグ 変更しない---*/
 background: #fff;
 padding:0;
 max-width:62.5em;
}
.BG-white-no-center{
 display: flex;
 flex-direction: row;
 justify-content: space-between;
 flex: 1 1 1;
 background: #fff;
 padding:3rem;
 flex-wrap: wrap; /* 折返し指定 */
}
.BG-inherit{
 display: flex;
 flex-direction: row;
 justify-content: center;
 align-items: flex-start;
}
.BG-inherit-no-center{
 display: flex;
 flex-direction: row;
 justify-content: space-between;
 flex: 1 1 100%;
 background: inherit;
 padding:7rem 3rem;
}
.BG-inherit-noM{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center; align-content: center;
  padding:0;
}
.shadow{
  filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.1));
}
/*--------------------------------------
  カテゴリー別記事一覧のタブ切り替え
--------------------------------------*/
.tab-wrap{ margin-bottom: 40px;}
.tab-group{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    align-items: flex-end;
}
.tab{
    flex-grow: 1;
    background: #58A9EF; /* タブのカラー */
    border-radius: 10px 10px 0 0;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    font-size: 13px; font-weight: bold;
    margin: 0 5px; padding: 14px 0 12px;
    text-align: center;
    transition: 1s;
    vertical-align: bottom;
}
.panel-group{
    min-height:100px;
    border:solid 1px #CCC;
    border-top: 8px solid #C8E4FF;
    padding: 10px;
}
.panel{display:none;}
.tab.is-active{
    color:#FFF;
    transition: 1s;
    opacity: 0.6;
    padding-bottom: 20px;
}
.panel.is-show{ display:block;}

@media screen and (max-width:480px) {
.tab{ padding: 10px 0 7px;}
.tab.is-active{ padding-bottom: 15px;}
}


@media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
.hero-T{padding: 5rem 1rem;}
.hero-txt{   flex:1 1 auto; font:600 2rem 'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif; padding:1rem 0 0; position: relative; top:0;}
.hero-txt02{  font: 'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif; }
.hero-img{	position: relative;  top: 30px;  }
.Cname{color:#000; }
.BG-blue, .BG-inherit { flex-direction:column; align-items: flex-start; padding:5rem 1rem 3rem; }
.BG-white, .BG-white-noM, .BG-inherit-noM, .BG-white-no-center, .BG-inherit-no-center{   flex-direction: column;  align-items: left;  align-content: left;	padding:1rem 0; margin-bottom: 5rem;}

}

/* ============================================================================================================
	 00-1.SUB PAGE（TOP以外の固定ページ）
=============================================================================================================*/
/*-------------Navi-SUB スクロール前------------*/
.Header-bg{	background: #fff;}
.gnav__menu__item-sub{	margin-left: 30px;}
.Header .gnav__menu__item-sub a{
 color: #000;
 text-decoration: none;
 position: relative;
 display: inline-block;
 font-weight:600;
}
.Header .gnav__menu__item-sub a::after {
 position: absolute;
 bottom: -4px;  left: 0;
 content: '';
 width: 100%;
 height: 2px;
 background: #004fed;
 transform: scale(0, 1); transform-origin: left top; transition: transform .3s;
}
.Header .gnav__menu__item-sub a:hover::after {  transform: scale(1, 1);}
.Header .gnav__menu__item-sub a:hover {  color:#004fed; transition: 0.7s;}
@media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
.gnav__menu__item-sub {margin:0; padding:8px; font-size: 0.8rem;}
.Header .gnav__menu__item-sub a {color:#000;}
}
/*------------- パンくずリスト ------------*/
.breadcrumbs{position: relative; top:70px;}/*------------- Breadcrumb NavXTプラグイン ------------*/
.breadcrumb-area { display: flex; padding: 1rem 0; letter-spacing: 1px;}
.breadcrumb-area > a {  text-decoration: none;  color: #0043ff; padding-right:0.5rem;}
.breadcrumb-area > p:after {  font-family: 'icomoon'; content: "\e901"; padding: 0 0.5rem;}
.breadcrumb-area > p:last-child:after {  display: none; }
.breadcrumb-area  a:hover {  text-decoration: underline; transition: 0.5s;}
@media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
  .breadcrumbs{position: relative; top: 100px; padding: 0 2rem; font-size: 0.8rem;}/*------------- Breadcrumb NavXTプラグイン ------------*/
  }
/*------------- Heroコンテンツ for SUB PAGE ------------*/
.Hsub-container{
   display:flex;
    position:relative;
     top:100px;margin: 0;
      padding: 5rem 1rem;  }
.Hsub-contents{	text-align: left; color:#fff; line-height:200%;}

.Hero-C{ margin: 0;  padding: 0;  display:block;  position:relative; top:80px;}
.Hsub-Etitle{ margin:3rem 0 1.5rem;  padding-bottom:0.8rem;  }
.Hsub-Jarea{  display:flex; flex-direction:row; align-items:center;}

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500&display=swap');
.Hsub-Jtitle{ padding-right:2rem; display:inline-block;  color:#000; font:600 3rem "Noto Sans JP", sans-serif;}
.Hsub-title{ display:inline-block; color:#000; font:500 1.3rem "Noto Sans JP", sans-serif;}
.Hsub-txt{  display:block;  }

.Hero-deep-blue{
 display: flex;
 flex-direction: row;
 justify-content: center;  align-items: center;  align-content: center;
 flex: 1 1 0%;	/*--- IEバグ 変更しない---*/
 background: #033789;
 padding:10rem 1rem 7rem;
 position:relative;
 top:-80px ;margin-bottom:-80px;
}
.Hero-deep-blue > p{position:relative; top:0; color:#fff; font-size:1.2rem;}
.z-5{position:relative; z-index:5;}
.Hero-deep-blue a {position:relative; top:0; color:#fff; text-decoration: underline;}
.Hero-deep-blue a:hover{position:relative; top:0; color:#FF9C9C; }

@media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
.breadcrumb-area { top: 40px;  margin-bottom:40px; padding: 1rem 0; }
.Hsub-container{ padding:1rem 0 10rem;}
.Hero-C{ top:100px; }
.Hsub-Etitle{  margin: 0 0 2rem; }
.Hsub-Jarea{  margin: 0; display:block;}	.Hsub-Jtitle{ padding-right:0; font-size:1.5rem;}.Hsub-title{ font:500 1.1rem "Noto Sans JP", sans-serif;}
.Hero-deep-blue{ padding: 10rem 1rem 5rem;}
.Hsub-txt{ padding:1rem 0 0;  }
}


/* ============================================================================================================
	 01.COMPANY PAGE
=============================================================================================================*/

.tbl-wrap {
  overflow-x: scroll;
  width: 100%;
}

.tbl-wrap-y250 {
  overflow: auto;
  height: 250px;
  background: #fff;
}
.tbl-normal {
  width: 100%;
}
.tbl-normal th, .tbl-normal td {
  padding: 15px;
  border: solid 1px #ccc;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.tbl-normal th {
  background: #eee;
}

table {  width:100%;}
.tbl th { background: #f7f8f9;  border-bottom: solid 1px #a0a0a0;  color: #000;  padding: 2rem;}
.tbl td { border-bottom: solid 1px #e5e5e5;  padding:2rem;}
.tbl table tr:last-child td { border:none;}
s.tbl td ul li{	padding:1rem 0; list-style: square;}

 @media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
 .last td:last-child {    border-bottom: solid 1px #ccc;    width: 100%;  }
 .tbl th, .tbl td {　border-bottom: none;    display: block;    width: 100%;  }
 .tbl td {	border-bottom: solid 1px #a0a0a0; padding:1rem 0;}
}

/* ============================================================================================================
	 02.SERVICE PAGE
=============================================================================================================*/
.Hsub-Jarea-link {
   display:flex; gap: max(0.5vw, 20px);
   padding-top:1rem;
  }
.service{
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: max(1vw,50px);
  width:100%;
  background: #f0f6ff;
  border-radius: 60px;
  margin: 3rem 0;
  padding: max(4vw, 2rem);
}
.service-title{ margin-bottom: 1rem; font-size: max(18px, 1.5vw); font-weight:700; line-height: 1;}
.service-txt{ padding:0 0 1rem; font-size: max(16px, 1vw); font-weight:700; }
.service-cont{ display:flex; justify-content: space-around;}
.service-img {
  display:flex;
  align-items:center;
  justify-content:center;
  width:100px;
  height:100px;
  border-radius:50%;
  background:#fff;
}
.circle {  width: 120px;  border-radius: 50%;  background: #fff;  }
.circle-img {  position: relative;  padding-top: 100%;  padding-top: 100%;  height: 0;}
.circle-img img {  position: absolute;  top: calc((100% - 1.7em)/2);  left: calc((100% - 2.5rem)/2);  right: 0;
  margin: 0;  text-align: center;}
.service-last{ margin-left: auto;}

 @media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
.Hsub-Jarea-link {  display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); padding:0;}
.service{ justify-content: center;flex-direction: column;}
.service-title{padding:0 0 1rem; text-align: center;}
.service-txt{ text-align: center; }
.service-cont{ display:flex; justify-content: space-between; flex-direction: column;}
.service-last {  margin-left: 0;}
}

.fadein .BG-white-radius:nth-child(2){transition-delay: .5s; transition-duration:0.8s;}

	/* 02-01.SERVICE PAGE 個別
-----------------------------------------------------------------------------*/
.Hero-S{ position:relative; top:80px; background: linear-gradient(to right, #3575bb 0%, #1daecd 30%, #6fbecb 100%);}
.service-link{display:flex; justify-content: center; }
.service-link a {	position:relative; z-index: 10;  display: inline-block;  color: #fff;  padding:1rem 2rem;}
.service-link a:hover {background-color: rgba(0,2,248,0.2); transition: 0.5s}
.service-titleE{display:inline-block;font-size:1rem; font-weight:600; color:#000; padding:0 2rem ; }


.Service-blue-con{
	position:relative;
	top:60px ;margin-bottom:-80px;
  gap: 50px;
	z-index:10;
	background:#fff;
	text-align: center;
	display: flex;
	justify-content: space-between;
	margin:0 5rem; padding:2rem 4rem;
  border-radius: 60px;
  background: var(--color-aqua);
}
.Yajirushi {
  background-image: url("../imgs/yajirushi.svg");
  width:158px; height:230px;
  position: relative;
  top:50px;
}
.Service-ul{	font-weight:600; flex:1 1 100%;}
.Service-ul li{   position: relative;  padding-left: 25px; margin:3rem 0; line-height:1.5;}
.Service-ul li:before {
	content: "";
    position: absolute;
    top: .25em; left: 6px;
    -webkit-transform: rotate(50deg);
    -ms-transform: rotate(50deg);
    transform: rotate(50deg);
    width: 5px; height: 10px;
    border-right: 3px solid var(--color-blue);
    border-bottom: 3px solid var(--color-blue);
  }
.Service-ul li:after {
    content: "";
    position: absolute;
    top: .25em; left: 0;
    width: 15px; height: 15px;
    border: 2px solid #ccc;
  }
.marker{
 background: linear-gradient(transparent 75%, #82aef4 75%);
 font-weight: bold; border-radius:2px; padding-bottom: -0.2rem;
}

.BG-white-radius{
 display: flex;
 flex-direction: column;
 align-items: center; align-content: center;
 flex: 1 1 100%;	/*--- IEバグ 変更しない---*/
 background: #fff;
 margin:0 1rem; padding:7rem 3rem 3rem;
 border-radius: 6px;
 width:100%;
}
.img-up{position:relative; top:-190px; margin-bottom:-190px;}
.radius-title{display:block;padding:2rem 0 1rem;font-weight:600; color:#004fed; }
.Snav{display: block;
	position:relative;
	top:100px;
	background:linear-gradient(45deg, rgba(51, 126, 209, 1.0), rgba(8, 186, 219, 1.0) , rgba(113, 199, 213, 1.0));
	z-index: 10;
	margin-bottom: -40px;
}
.Snav-menu{	display: flex;
	flex-direction: row;
    justify-content: space-between;
	flex: 1 1 0%;	/*--- IEバグ 変更しない---*/
	align-content: stretch; align-content: space-between;
	flex-wrap: wrap;
}
.Snav-menu_item { margin: 0;  }
.Snav-menu a{
  color: #fff;
  text-decoration: none;
  position: relative;
  display: block;
  padding:0.5rem 0;
  font-weight:600;
}
.Snav-menu a:after{font-family: 'icomoon'; content: "\e901"; padding-left:1rem;}
.Snav-menu a:hover{  color: #004fed; transition: 0.5s;}

@media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
.service-link{flex-direction: column;}
.service-link a {	display:block; border-bottom:1px solid #fff;}
.Service-deep-blue{ top:0; padding: 0; margin-bottom: 1rem;}
.Service-deep-blue-con{ top:50px; padding:1rem; width:100%; flex-direction: column; margin-bottom: -80px;}
.Service-ul{padding:0;}
.Service-blue-con{
  flex-direction: column;
  gap: 0;
	margin:0 1rem; padding:1rem ;
}
.Yajirushi {
    width: 100px; height: 230px;
    position: relative;
    top: 50px;
    background-repeat: no-repeat;
    text-align: center;
    background-size: contain;
}
.BG-white-radius{width:90%; margin:1rem;}
.img-up{ top:-50px; margin-bottom:-50px;}

.Snav{	background: white; top: 90px; margin-bottom: -120px;}
.Snav-menu{	flex-wrap: wrap;}
.Snav-menu_item {  padding: 3px; width: 50%; font-size:0.85rem;}
.Snav-menu a{  border-radius:2px; background:linear-gradient(45deg, rgba(51, 126, 209, 1.0), rgba(8, 186, 219, 1.0) , rgba(113, 199, 213, 1.0));  padding:0 1rem;	}
.Snav-menu a:after{content: ""; padding-left:0;}
.Snav-menu a:hover{  color: #fff; background:linear-gradient(45deg, rgba(51, 126, 209, 0.8), rgba(8, 186, 219, 0.8) , rgba(113, 199, 213, 0.8)); }

}


/* =============================================================================
	 04.CONTACT PAGE
=============================================================================*/
.contact{
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  align-items: stretch;
  gap:50px;
}

.contact-btn {
    display: block;
    background-color: #fff;
    filter: drop-shadow(1px 1px 3px rgba(0, 0, 0, 0.2));
}
.contact-wrap { text-align: center; padding: 2rem 4rem; color: #000;}
.contact-wrap > .phone {
    text-align: center;
    color: #333;
    font-size: 2.2rem; font-weight: 700;
}
.box_line {
  border: 1px solid #ccc;
}
 @media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
.contact-Cont { flex-direction: column;  margin: 0.5rem 0 5rem;  max-width: 100%;}
.contact-wrap { padding: 2rem;}
.contact-wrap > .phone { font-size:1.6rem;font-weight: 600; }

}

/* =mail form
-----------------------------------------------------------------------------*/
#cf-tbl table {
  width: 100%;
  border-collapse: collapse;
  border: solid #CCC;
    border-top-width: medium;
    border-right-width: medium;
    border-bottom-width: medium;
    border-left-width: medium;
  border-width: 1px;
  color: #444;
}
#cf-tbl table tr th, #cf-tbl table tr td {
  padding: 0.5em;
  text-align: left;
  border: 1px solid #CCC;
  vertical-align: middle;
  background: #fff;
}
#cf-tbl table tr th {
  width: 35%;
  background: #eee;
  color: #000;
}
.required {
  margin-right: 5px;
  padding: 5px;
  font-size: 0.8em;
  background: #ff8500;
  color: #fff;
  font-weight: 700;
  border-radius: 3px;
}
.optional {
  margin-right: 5px;
  padding: 5px;
  font-size: 0.8em;
  font-weight: 700;
  background: #999;
  color: #fff;
  border-radius: 3px;
}
.screen-reader-response{
  display: none;
}
input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea {
  width: 100%;
  padding: 8px 15px;
  border: 1px solid #d0d5d8;
  border-radius: 3px;
  color: #666;
  background: #eff1f5;
  font-size: inherit;
}
input:placeholder-shown {
  position: relative;
  top: -1px;
  vertical-align: inherit;
  text-align: inherit;
  color: #666;
}
span.wpcf7-not-valid-tip, .wpcf7-response-output.wpcf7-validation-errors {
  color: red;
  font-weight: 600;
}

input.wpcf7-submit {
  display: block;
  width: 100%;
  max-width: 400px;
  margin: 1rem auto;
  padding: 1.5rem 1rem;
  background: #1892ff;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  border: none;
  border-radius: 6px;
  text-align: center;
}
input.wpcf7-submit:hover {
  background-color: #1f6ab3;
  -webkit-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output,
.wpcf7-spinner {
	display: none;
}

.wpcf7 .wpcf7-submit:disabled {
  background: #ccc;
}





/* =============================================================================
	 05.JIREI PAGE
=============================================================================*/
.txt-jirei{display:block;padding:0 0 1rem; text-align: center; font-weight:600; font-size:1.2rem;}
.BG-white-jirei {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1 1 100%;
    background: #fff;
    padding: 1rem;
}
.BG-jirei {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-content: center; align-items: center;
  flex: 1 1 100%;	/*--- IEバグ 変更しない---*/
}
.grid-container {
  display: grid;
  gap: 40px 10px;
  grid-template-columns: repeat(auto-fit, minmax(420px, 3fr));
}
.grid-container a{}
.grid-container a:hover {	background-color: #F6F6F6; opacity:0.8; transition: .3s;}

.jirei-wrap  {
    display: block;
	background-color:#fff;
    margin: 0 1rem;
	filter:drop-shadow(1px 1px 3px rgba(0, 0, 0, 0.2));
}
.jirei-wrap-no{
    display: block;
	background-color:#fff;
    padding:2rem;
	filter:drop-shadow(1px 1px 3px rgba(0, 0, 0, 0.2));
	width:100%;
	text-align: center;
}
.archive-wrap  {
    display: block;
	background-color:#fff;
    margin: 0 1rem;
	filter:drop-shadow(1px 1px 3px rgba(0, 0, 0, 0.2));
}
.jirei-wrap .scale { overflow: hidden;	/* 領域をはみ出す部分は非表示 */ display: block; text-align: center;}
.scale img{transition-duration: 0.5s; max-width: 100%; height: 320px; object-fit: cover;}
.scale img:hover{transform: scale( 1.5, 1.5 );transition-duration: 0.5s;}

.archive-wrap .scale02 { overflow: hidden;	/* 領域をはみ出す部分は非表示 */ display: block; text-align: center;}
.scale02 img{transition-duration: 0.5s; max-width: 100%; height: 180px; object-fit: cover;}
.scale02 img:hover{transform: scale( 1.5, 1.5 );transition-duration: 0.5s;}

.jirei-cont { padding: 1rem 3rem;}
.jirei-cont > .jirei-title {
    padding: 1rem 0;
    font-size: 1rem; font-weight: 600;
    color: #000;
	word-break: break-word;
}
.jirei-cont > p { padding: 1rem 0; color: #000;}
.jirei-cont > h6 {  color: #666;}
 @media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
  .txt-jirei{padding: 1rem 0 0;}
  .BG-white-jirei { padding: 0;}
  .grid-container { grid-auto-rows: auto; grid-template-columns: auto; justify-content: center;}
  .jirei-cont{padding: 1rem 1.5rem;}
  .scale img{max-width: 100%; height: auto;}
  .scale02 img{ max-width: 100%; height: auto;}
}

.wp-post-image{/*アイキャッチ画像*/
    max-width: 100%; height:224px; 	display: inline-block;}
.thumb img{
	width:auto; height:auto ;max-width:100%; max-height:224px;}

 /* =MAP
-----------------------------------------------------------------------------*/
 .ggmap-waku{	border: 1px solid #A58558;	padding:10px;	color: #6D5041;	}
 .ggmap { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden;}
 .ggmap iframe, .ggmap object, .ggmap embed {position: absolute; top: 0; left: 0; width: 100%;height: 100%;}


/* =Footer
-----------------------------------------------------------------------------*/
.BG-deep-blue{
  display: flex;
  flex-direction: row;
  justify-content: center; align-items: center; align-content: center;
  flex: 1 1 0%;	/*--- IEバグ 変更しない---*/
  background: #033789;
  padding:4rem 1rem 7rem;
}

.Footer{
  display: grid;
  flex-direction: row;
  justify-content: center;
  column-gap: max(10vw, 240px);
  row-gap: 1rem;
  color: #fff;
  padding: 2rem 1rem 0;
}
.Footer-logo img{
  width: 100px;
  display: inline-block;
  margin: 0 auto;
}
.F-info{
  display: block;
  grid-row: 1 / 2;
	grid-column: 1 / 2;
}
.F-Cname { font-size:1.3rem; font-weight: 700;}
.F-Cadd { font-weight: 700;}
.F-tel { line-height: 1.5;}
.F-link {
  display: flex;
  grid-row: 2 / 3;
  grid-column: 1 / 3;
  font-size: 0.8rem;
  line-height: 1;
  }
.F-link li {
position: relative;
margin-right: 2em;
  }
.F-link li::before {
  position: absolute;
	top: 0;
	left: 100%;
	margin: 0 1rem;
	content: "";
	width: 1px;
	height: 100%;
	background-color: #fff;
}
.F-link li:last-child::before {
  display: none;
}
.F-link a{
  color: #fff;
  transition: ease-in-out, .3s;
  text-decoration: none;
}
.F-link a:hover{
  opacity: .5;
  transition: ease-in-out, .3s;
}

.fnav{
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: max(1vw, 140px);
  grid-row: 1 / 2;
  grid-column: 2 / 3;
}
.fnav .fnav-list {
  display: grid;
  gap: 5px;
}
.fnav .fnav-list_item {
  width: 100%;
  white-space: nowrap;
}
.fnav .fnav-list a{
  padding: 1vh 0;
  font-weight: 700;
  color: #fff;
  transition: ease-in-out, .3s;
  text-decoration: none;
}
.fnav .fnav-list a:hover {
  transition: ease-in-out, .3s;
  opacity: .5;
  color: #fff;
}
.fnav .parent {
  display: block;
  text-indent: -2em;
  padding-left: 2rem;
  margin-top: 0;
  font-size: 0.9rem;
}
.fnav .parent::before {
  position: relative;
  content: "\e901";
  font-family: 'icomoon';
color: #fff;
}
.fnav .child {
  display: block;
  text-indent: -0.5em;
  padding-left: 0.5rem;
  margin-top: 00.5rem;
  font-size: 0.9rem;
}
.fnav .child::before {
  position: relative;
  top: 14px;
  left: -12px;
  content: "";
  display: block;
  width: 6px;
  height: 1px;
  background: #fff
}

.Copy{color:#fff;font-size:0.8rem; }


.BG-Contact{
  position: relative;
 display: flex;
 flex-direction: row;
 justify-content: center;
 align-items: center; align-content: center;
 background:#f0f6ff;
 padding:7rem 3rem;
}

.Contact-txt{
  background-image: url("../imgs/contact-footer-txt.png");
  background-position: top right;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: -2px;
  right: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  opacity: .8;
}


 @media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
.Footer{display: flex; flex-direction: column;}
.F-link { flex-direction: column;  }
.F-link li { margin: 0.5rem 0;}
.F-link li::before { width:0;}
.fnav{grid-template-columns: 1fr;}
.Copy{padding:0.5rem 0;}


}

/* =============================================================================
	 05.PRIVACY POLICY PAGE
=============================================================================*/
.Ptitle{  padding:1rem 0 ; font-weight:600; text-align:left;}
.Pcont{margin:0 0 3rem 1rem;}
.Pcont ul li{   padding-left: 1em;  text-indent: -1em;}
a.link_default {  text-decoration: underline;}
a.link_default:hover {  opacity: .5;  transition: 0.3s;}
a.link_default.open::after {
  display: inline-block;
  position: relative;
  top: 0.1rem;
  height: 1rem;
  width: 1rem;
  margin: 0.3rem 0 0 0.3rem;
  content: "";
  background-image: url("../imgs/page-link.svg");
  -webkit-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}
/* =============================================================================
	 06.SITEMAP PAGE
=============================================================================*/
.sitemap-nav{display:flex; flex-direction:row; justify-content: space-between; align-items: flex-start;}
.sitemap-nav .sitemap-list{
  display: grid;
  gap: 10px;
}
.sitemap-nav .parent {
  display: block;
  text-indent: -2em;
  padding-left: 2rem;
  margin-top: 0;
  font-size: 0.9rem;
}
.sitemap-nav .parent::before {
  position: relative;
  content: "\e901";
  font-family: 'icomoon';
}
.sitemap-nav .child {
  display: block;
  text-indent: -0.5em;
  padding-left: 0.5rem;
  margin-top: 00.5rem;
  font-size: 0.9rem;
}
.sitemap-nav .child::before {
  position: relative;
  top: 14px;
  left: -12px;
  content: "";
  display: block;
  width: 6px;
  height: 1px;
  background: #000;
}
.sitemap-nav .sitemap-list_item {
  width: 100%;
  white-space: nowrap;
}
.sitemap-nav .sitemap-list a {
  padding: 1vh 0;
  font-weight: 700;
  color: #000;
  transition: ease-in-out, .3s;
  text-decoration: none;
}
.sitemap-nav .sitemap-list a:hover {
  transition: ease-in-out, .3s;
  text-decoration: underline;
}


 @media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
  .sitemap-nav{flex-direction:column; }

}



/* =sidebar サイドバー部分
--------------------------------------------------------------------------*/
#sidebar{padding-left:5rem; }
.sidebar-title{font-size:1rem;}

.widget_tag_cloud .tagcloud a{
 font-size:0.7rem !important;
 color:#033789;
 padding:0 0.5rem; margin:0.2rem 0;
 border:1px solid #033789;
 border-radius:4px;
 background: #f4f4f4;
 white-space: nowrap;
 display: inline-block;
}
.widget_tag_cloud .tagcloud a:hover { background-color: #d7eaff;}

.widget_archive, .widget_search{margin-top:1rem;}

/*------------------------カスタムメニュー*/
#nav_menu-2 ul li a{
 display: block;
 border-bottom:none;
 margin: 5px 0; padding:0.2rem 1rem;
 font-size: 0.8rem; font-weight:bold;
 background: #033789; color:#fff;
}
#nav_menu-2  ul li a:hover{ background:#004fed; transition: 0.3s}

#nav_menu-2 .sub-menu { padding-left: 10px; }
#nav_menu-2 .sub-menu li{ background: #fff;}
#nav_menu-2 .sub-menu li a{  margin: 0 0 0.5rem 0; padding:0.2rem 1rem;   font-size: 0.8rem; font-weight:normal; background: #d7eaff; color:#033789; line-height:150%;}
#nav_menu-2 .sub-menu li a:hover{ background: #d7eaff; color:#004fed; transition: 0.3s}



/*------------------------検索窓 */
.searchform{
position:relative;
max-width:160px;
margin-bottom:15px;
}
.searchfield {
position:absolute;
left:0;
top:0;
outline:0;
height:35px;
padding:0 10px;
border: none;
border-radius:2px 0 0 2px;
background:#eee;
}
.searchsubmit {
width:60px;
height:35px;
position:absolute;
left:161px;
top:0;
border-radius:0 2px 2px 0;
background: var(--color-blue);
border:none;
color:#fff;
font-weight:bold;
font-size:0.8rem;
appearance: none;/*iOSのボタン設定を無効にする*/
-webkit-appearance: none;
}

.searchsubmit:hover {opacity: .8;}

/*------------------------カテゴリー */
#categories-3 ul li a{
 border-bottom:none;
 padding:0 1rem;
 font-weight:bold;
 background: #033789;
 display: block;
 margin: 5px 0;
	color:#fff;
}

#categories-3 ul li.cat-item ul.children { padding:0 0 15px 5px; background: #fff;}
#categories-3 ul li.cat-item ul.children li{ background: #fff;}
#categories-3 ul li.cat-item ul.children li a{ font-weight:normal; background: #fff; color:#033789;}
.children{backggound:#fff !important;}

 @media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
#sidebar{padding:0 1rem; }
.sidebar-title{font-size:1rem;}

}


/* =archive 記事一覧ページ
--------------------------------------------------------------------------*/
.archive-con {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-content: center;
  flex: 1 1 100%;
  background: #fff;
  padding: 0;
  max-width: 62.5em;
  filter: drop-shadow(1px 1px 3px rgba(0, 0, 0, 0.2));
  margin-bottom: 7rem;
}
.archive-con > div:nth-child(2) {	padding:2rem;}

.archive-container {
  display: grid;
  gap: 40px 10px;
  grid-template-columns: repeat(auto-fit, minmax(250px, 3fr));
  grid-auto-rows: auto;
}
.archive-container a{}
.archive-container a:hover {	background-color: #F6F6F6; opacity:0.8; transition: .3s;}

.archive-cont { padding: 1rem 2rem;}
.archive-cont > .archive-title {
  color: #000;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5;
	word-break: break-word;
}
.archive-cont > p {    padding: 1rem 0;    color: #000;}
.archive-cont > h6 {  color: #666;}
 @media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
  .archive-container {margin-top: 120px;}
.archive-cont {  padding: 1rem 1.5rem;}
}

/*------------------------=WP PageNavi ページナビ*/
.wp-pagenavi {	margin-bottom:5rem; text-align:center;}
.wp-pagenavi a, .wp-pagenavi span {
	color: #999;
	background-color: #FFF;
	border: solid 1px #e0e0d2;
	padding: 8px 15px;
	margin: 0 2px;
	white-space: nowrap;
	border-radius: 3px;
	transition: 0.2s ease-in-out;
	text-align: center;
	text-decoration:none;
}
.wp-pagenavi a:hover{
    color:#FFF;
    background-color:#999;
    border-color:#999;
    }
.wp-pagenavi span.current{
	color: #FFF;
	background-color: #66cccc;
	border-color: #66cccc;
	font-weight: bold;
    }
 @media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
.wp-pagenavi { margin: -100px 0 7rem;}
}

/* =post 投稿ページ
--------------------------------------------------------------------------*/
.post{width:100%; }
.Post-con{
  flex: 1 1 100%; display: block;
  margin-bottom:7rem;
  padding:5rem;
  background-color: #fff;
  filter: drop-shadow(1px 1px 3px rgba(0, 0, 0, 0.2));
  transform: translateZ(0);/* ---filter==for Safari--*/
}
.cal{color:#666;padding:1rem 0;}
.tag a {font-size:0.8rem; line-height:200%; color:#033789; background-color:#f4f4f4; display:inline-block;
	border-radius:2px;border:1px solid #033789; padding:0 0.5rem; margin:0.2rem 0;}
.tag a:hover {background-color:#d7eaff;}

.post-p-con{ display: block; position: relative; top: -50px; width: 95%; z-index: 100; margin: 0 auto; padding: 3rem; background: rgba(253,253,255,0.95); filter: drop-shadow(1px 1px 3px rgba(0, 0, 0, 0.2));}

.post-title{word-break: break-all;}
.post-Stitle01{display:flex; align-items: center; height: 50px; margin:2rem 0; padding:0 1rem; font-size:1rem; background: #BAE6E1; border-left: 4px solid #006A69;}
.post-Stitle01:before{content:'01'; font-family: 'arial'; font-style: italic; letter-spacing: -5px; font-size:4.4rem; vertical-align: bottom;	color:rgba(255,255,255,0.5); padding-right:1rem;}
.post-Stitle02{display:flex; align-items: center; height: 50px; margin:2rem 0; padding:0 1rem; font-size:1rem; background: #C9D7EA; border-left: 4px solid #003596;}
.post-Stitle02:before{
	content:'02'; font-family: 'arial'; font-style: italic; letter-spacing: -5px; font-size:4.4rem; vertical-align: bottom;
	color:rgba(255,255,255,0.5); padding-right:1rem;}
.post-Stitle03{display:flex; align-items: center; height: 50px; margin:2rem 0; padding:0 1rem; font-size:1rem; background: #F4DCD3; border-left: 4px solid #E46C4C;}
.post-Stitle03:before{
	content:'03'; font-family: 'arial'; font-style: italic; letter-spacing: -5px; font-size:4.4rem; vertical-align: bottom;
	color:rgba(255,255,255,0.5); padding-right:1rem;}
.post-Stitle04{display:inline-block; padding:0.3rem 0; font-size:1.2rem;}

.scale-no img{ max-width: 100%; height: auto;}

.nav-below {display:flex; justify-content: center; }
.nav-below > span {display:block; padding:0 2rem;  margin:0 0 3rem; font-weight:600;}
.nav-previous :before{font-family: 'icomoon'; content: "\e900";}
.nav-previous a{text-decoration: underline; padding-right:3rem; color:#333;}
.nav-previous a:hover{color:#0078FF; transition: 0.3s;}
.nav-next :before{font-family: 'icomoon'; content: "\e901";}
.nav-next a{text-decoration: underline; padding-right:3rem; color:#333;}
.nav-next a:hover{color:#0078FF; transition: 0.3s;}

#nav_menu-3  ul li a {
    display: block;
    border-bottom: none;
    margin: 5px 0;
    padding: 0 1rem;
    background: #033789;
    color: #fff;
	font-weight:600;
}
#nav_menu-3  ul li a:hover{ background:#004fed; transition: 0.3s}

#nav_menu-3 .sub-menu { padding:0 0 15px 5px; }
#nav_menu-3 .sub-menu li{ padding-bottom:1rem; text-indent: -1em; padding-left: 1em;}
#nav_menu-3 .sub-menu li a{ background: inherit; display:block;  color:#033789; line-height:1.2; text-decoration: underline; font-weight:normal; font-size: max(12px, 1vw); margin:0; padding:0;}
#nav_menu-3 .sub-menu li a:hover{ background: inherit; color:#004fed; transition: 0.3s}

 @media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
.Post-con{padding:1rem ; margin:1rem 0 3rem;}
.Post-con > h2 {word-break: break-all;}
.post-title{font-size:1.2rem;}
.post-p-con {top: 0; width: 100%; padding:2rem;}
.tag a {margin:0;}
#nav_menu-3 {margin-top: 1rem;}
#nav_menu-3  ul li a {padding:1rem;}
.nav-below > span {padding:0 1.1rem;  margin:0; }
.nav-previous a{ padding:0; }
.nav-next a{ padding:0;}
}

/* =sort 投稿ページのソート部分
--------------------------------------------------------------------------*/
@keyframes tabAnim{
  0%{opacity:0;}
  100%{opacity:1;}
}
.tab_wrap{width:100%; margin:80px auto; }
.tab_wrap > input[type="radio"]{display:none;}
.tab_area{ font-weight: 600;  font-size: 1rem;}
.tab_area label{width:170px; margin-right:5px; display:inline-block; padding:12px 0; color:#999; background:#ddd; text-align:center; font-size:13px; cursor:pointer; transition:ease 0.2s opacity;}
.tab_area label:hover{opacity:0.5;}
.tab_panel{width:100%; opacity:0; padding:80px 0; display:none;}
.tab_panel p{font-size:14px; letter-spacing:1px;}
.panel_area{background:#fff; border: 1px solid #eee;}
#tab1:checked ~ .tab_area .tab1_label{background:#fff; color:#000; border: 1px solid #eee; border-bottom: none;position: relative;top: 1px;}
#tab1:checked ~ .panel_area #panel1
{display:block; animation:tabAnim ease 0.6s forwards; -ms-animation:tabAnim ease 0.6s forwards;padding: 5rem 2.4rem;}
#tab2:checked ~ .tab_area .tab2_label
{background:#fff; color:#000; border: 1px solid #eee; border-bottom: none;position: relative;top: 1px;}
#tab2:checked ~ .panel_area #panel2
{display:block; animation:tabAnim ease 0.6s forwards; -ms-animation:tabAnim ease 0.6s forwards;padding: 5rem 2.4rem;}
#tab3:checked ~ .tab_area .tab3_label
{background:#fff; color:#000; border: 1px solid #eee; border-bottom: none;position: relative;top: 1px;}
#tab3:checked ~ .panel_area #panel3
{display:block; animation:tabAnim ease 0.6s forwards; -ms-animation:tabAnim ease 0.6s forwards;padding: 5rem 2.4rem;}
#tab4:checked ~ .tab_area .tab4_label
{background:#fff; color:#000; border: 1px solid #eee; border-bottom: none;position: relative;top: 1px;}
#tab4:checked ~ .panel_area #panel4
{display:block; animation:tabAnim ease 0.6s forwards; -ms-animation:tabAnim ease 0.6s forwards;padding: 5rem 2.4rem;}
#tab5:checked ~ .tab_area .tab5_label
{background:#fff; color:#000; border: 1px solid #eee; border-bottom: none;position: relative;top: 1px;}
#tab5:checked ~ .panel_area #panel5
{display:block; animation:tabAnim ease 0.6s forwards; -ms-animation:tabAnim ease 0.6s forwards;padding: 5rem 2.4rem;}

@media(max-width: 62.5em){/* スマホ---------------------------------------------------1000px以下 */
.tab_wrap{ margin:1rem 0; }
.tab_area{ display: grid; grid-template-columns: repeat(3, 1fr); width:100%; padding:0.5rem;}
.tab_area label{width:100%; border:1px solid #999; margin-top: -1px; margin-left: -1px; width: calc(100% + 1px); font-size:0.7rem; padding:0.5rem 0;}

.panel_area{width: calc(100% - 16px); margin: 0 auto;}
#tab1:checked ~ .panel_area #panel1{padding:1rem 0;}
#tab2:checked ~ .panel_area #panel2{padding:1rem 0;}
#tab3:checked ~ .panel_area #panel3{padding:1rem 0;}
#tab4:checked ~ .panel_area #panel4{padding:1rem 0;}
#tab5:checked ~ .panel_area #panel5{padding:1rem 0;}

#tab1:checked ~ .tab_area .tab1_label{top: 0; border: 1px solid #666;}
#tab2:checked ~ .tab_area .tab2_label{top: 0; border: 1px solid #666;}
#tab3:checked ~ .tab_area .tab3_label{top: 0; border: 1px solid #666;}
#tab4:checked ~ .tab_area .tab4_label{top: 0; border: 1px solid #666;}
#tab5:checked ~ .tab_area .tab5_label{top: 0;  grid-column: 2 / 4; border: 1px solid #666;}
.tab5_label{top: 0;  grid-column: 2 / 4;}
}

/* =Webfont
--------------------------------------------------------------------------*/
@font-face {
  font-family: 'icomoon';
  src:  url('../fonts/icomoon.eot?cnok77');
  src:  url('../fonts/icomoon.eot?cnok77#iefix') format('embedded-opentype'),
    url('../fonts/icomoon.ttf?cnok77') format('truetype'),
    url('../fonts/icomoon.woff?cnok77') format('woff'),
    url('../fonts/icomoon.svg?cnok77#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-left:before {  content: "\e900";}
.icon-right:before {  content: "\e901";}
.icon-mail:before {  content: "\e905";}
.icon-mail02:before {  content: "\e906";}
.icon-up:before {  content: "\e902";}
.icon-down:before {  content: "\e903";}
.icon-circle:before {  content: "\e904";}

/* =page-top
--------------------------------------------------------------------------*/

#pageTop {
  z-index:10;
  position: fixed;
  right: 10px;
  bottom: 80px;
  width: 50px;
  height: 50px;
  background: #fff;
  border-radius: 50%;
  color: var(--color-blue);
  border: 1px solid var(--color-blue);
  }

#pageTop a {
position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}

#pageTop i {  font-size: 1em; }
#pageTop a:hover {  text-decoration: none;  opacity: 0.7;}
.icon-gotop:before {  font-family: 'icomoon' ;
  font-weight: 900;
  content: '\e902';
  font-style:normal;
  color: var(--color-blue);
  position: absolute;
  width: 25px; height: 25px;
  top: 8px; bottom: 0; right: 0; left: 0;
  margin: auto;
  text-align: center;}

@media (max-width: 62.5rem) {
#pageTop{display: none; z-index: -999; opacity: 0; } #pageTop a{display: none; }
}

/* =Call only for Small device
--------------------------------------------------------------------------*/
@media(min-width: 62.5rem){
  a[href^="tel:"]{
    pointer-events: none;
  }
}
