@charset "utf-8";
/*
Theme Name: template083155
Theme URI: https://mawsdesign.com/
Description: mawsdesignテーマ
Version: 1.0
Author: mawsdesign
Author URI: https://mawsdesign.com/
Tags: mawsdesign

	mawsdesign template v1.0
	 https://mawsdesign.com/

	designed and built by mawsdesign template,

	The CSS, XHTML and design is released under GPL:
	http://www.opensource.org/licenses/gpl-license.php

*/

/*-------------------コンテンツ幅-----------------------*/

.container{
  max-width:1200px;
}






/*-------------------サイトスタイル-----------------------*/
 
body{
color:#222222;
background:#ffffff;
}
 a{
color:#002259;
}
 a:hover,
 a:active{
color:#2b5dac;
}
 #footer{
  background:#f7f7f7;
  color:#222222;
}
 #footer a{
  color:#222222;  
}
 #footer a:hover{
  color:#002259;  
}


/*-------------------余白の設定-----------------------*/

/* margin */
.m-ll{margin:90px!important;}
.mt-ll{margin-top:90px!important;}
.mb-ll{margin-bottom:90px!important;}
.ml-ll{margin-left:90px!important;}
.mr-ll{margin-right:90px!important;}
.m-l{margin:60px!important;}
.mt-l{margin-top:60px!important;}
.mb-l{margin-bottom:60px!important;}
.ml-l{margin-left:60px!important;}
.mr-l{margin-right:60px!important;}
.m-mm{margin:45px!important;}
.mt-mm{margin-top:45px!important;}
.mb-mm{margin-bottom:45px!important;}
.ml-mm{margin-left:45px!important;}
.mr-mm{margin-right:45px!important;}
.m-m{margin:30px!important;}
.mt-m{margin-top:30px!important;}
.mb-m{margin-bottom:30px!important;}
.ml-m{margin-left:30px!important;}
.mr-m{margin-right:30px!important;}
.m-s{margin:15px!important;}
.mt-s{margin-top:15px!important;}
.mb-s{margin-bottom:15px!important;}
.ml-s{margin-left:15px!important;}
.mr-s{margin-right:15px!important;}
.m-ss{margin:10px!important;}
.mt-ss{margin-top:10px!important;}
.mb-ss{margin-bottom:10px!important;}
.ml-ss{margin-left:10px!important;}
.mr-ss{margin-right:10px!important;}
/* padding */
.p-llp{padding:15%!important;}
.pt-llp{padding-top:15%!important;}
.pb-llp{padding-bottom:15%!important;}
.pl-llp{padding-left:15%!important;}
.pr-llp{padding-right:15%!important;}
.p-ll{padding:90px!important;}
.pt-ll{padding-top:90px!important;}
.pb-ll{padding-bottom:90px!important;}
.pl-ll{padding-left:90px!important;}
.pr-ll{padding-right:90px!important;}
.p-l{padding:60px!important;}
.p-lp{padding:10%!important;}
.pt-lp{padding-top:10%!important;}
.pb-lp{padding-bottom:10%!important;}
.pl-lp{padding-left:10%!important;}
.pr-lp{padding-right:10%!important;}
.pt-l{padding-top:60px!important;}
.pb-l{padding-bottom:60px!important;}
.pl-l{padding-left:60px!important;}
.pr-l{padding-right:60px!important;}
.p-mm{padding:45px!important;}
.p-mmp{padding:7%!important;}
.pt-mmp{padding-top:7%!important;}
.pb-mmp{padding-bottom:7%!important;}
.pl-mmp{padding-left:7%!important;}
.pr-mmp{padding-right:7%!important;}
.pt-mm{padding-top:45px!important;}
.pb-mm{padding-bottom:45px!important;}
.p-m{padding:30px!important;}
.p-mp{padding:5%!important;}
.pt-mp{padding-top:5%!important;}
.pb-mp{padding-bottom:5%!important;}
.pl-mp{padding-left:5%!important;}
.pr-mp{padding-right:5%!important;}
.pt-m{padding-top:30px!important;}
.pb-m{padding-bottom:30px!important;}
.pl-m{padding-left:30px!important;}
.pr-m{padding-right:30px!important;}
.p-s{padding:15px!important;}
.p-sp{padding:3%!important;}
.pt-sp{padding-top:3%!important;}
.pb-sp{padding-bottom:3%!important;}
.pl-sp{padding-left:3%!important;}
.pr-sp{padding-right:3%!important;}
.pt-s{padding-top:15px!important;}
.pb-s{padding-bottom:15px!important;}
.pl-s{padding-left:15px!important;}
.pr-s{padding-right:15px!important;}
.p-ss{padding:10px!important;}
.p-ssp{padding:1%!important;}
.pt-ssp{padding-top:1%!important;}
.pb-ssp{padding-bottom:1%!important;}
.pl-ssp{padding-left:1%!important;}
.pr-ssp{padding-right:1%!important;}
.pt-ss{padding-top:10px!important;}
.pb-ss{padding-bottom:10px!important;}
.pl-ss{padding-left:10px!important;}
.pr-ss{padding-right:10px!important;}

.archive.container,
.single.container,
.section-ll{
  padding-top:90px;
  padding-bottom:90px;
}
.section-l{
  padding-top:60px;
  padding-bottom:60px;
}
.section-mm{
  padding-top:45px;
  padding-bottom:45px;
}
.section-m{
  padding-top:30px;
  padding-bottom:30px;
}
.section-s{
  padding-top:15px;
  padding-bottom:15px;
}
.section-ss{
  padding-top:10px;
  padding-bottom:10px;
}
.btn-box{
  margin-top:30px;
}
.post-box h1{
  margin-top:45px;
  margin-bottom:45px;
}
.post-box h2{
  margin-top:30px;
  margin-bottom:30px;
}
.post-box h3{
  margin-top:30px;
  margin-bottom:30px;
}
.post-box h4{
  margin-top:15px;
  margin-bottom:15px;
}

.col-mb-m div[class*="col-"] {
  margin-bottom:15px;
}
.col-mb-s div[class*="col-"] {
  margin-bottom:15px;
}
.col-mb-ss div[class*="col-"] {
  margin-bottom:10px;
}


/*-------------------文字間・行間-----------------------*/


/*--bodyのスタイル--*/
body{
line-height:1.8;
letter-spacing:normal;
text-align:justify;
}
 p{
padding:0.5em 0;
}
 .lh-ll{
line-height:2.5!important;
}
 .lh-l{
line-height:2!important;
}
 .lh-mm{
line-height:1.8!important;
}
 .lh-m{
line-height:1.5!important;
}
 .lh-s{
line-height:1.3!important;
}
 .lh-ss{
line-height:1.1!important;
}
 .ls-l{
letter-spacing:3px!important;
}
 .ls-m{
letter-spacing:normal!important;
}
 .ls-s{
letter-spacing:-3px;!important;
}



/*-------------------書体-----------------------*/

 body{
 	font-family: 'Noto Serif', 'Sawarabi Mincho', serif;font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-weight: 500;
}




/*-------------------文字サイズ-----------------------*/

body{font-size:16px;}
 h1{font-size:36px;}
 h2{font-size:28px;}
 h3{font-size:20px;}
 h4{font-size:16px;}
 .fs-ss{font-size:12px;}
 .fs-s{font-size:14px;}
 .fs-m{font-size:16px;}
 .fs-mm{font-size:20px;}
 .fs-l{font-size:28px;}
 .fs-ll{font-size:36px;}
 .fs-3l{font-size:42px;}

 

/*-------------------トップ見出し-----------------------*/
 
 .title-top {
  padding: 10px;
  border-top:2px solid #002259;
  color: #002259;
  border-bottom:1px dotted #ccc;
}


/*-------------------リンクスタイル-----------------------*/

a{
  text-decoration:none;  
}
main p a{
  text-decoration:underline;
}






/*-------------------見出し１-----------------------*/
 
 .title1 , 
 .post-contents h1 {
  position:relative;
  padding:1em 0;
  text-align:center;
}
 .title1:after,
 .post-contents h1:after{
    content: "";
    position: absolute;
	background: linear-gradient(110deg, #002259 0%, #4d72ac 50%, #d4e4fc 100%);
    top: 0%;
    left: 50%;
    height: 0.1em;
    width: 3em;
    margin-left: -1.5em;
}


/*-------------------見出し２-----------------------*/
 
 .title2, 
 .post-contents h2{
position: relative;
border:solid 1px #ddd;
padding:0.3em 0 0.3em 1em;
border-radius: 5px;
background: #f4f4f4;
-moz-border-radius: .5em; /* FF */
background: -moz-linear-gradient(top,  #ffffff,  #eee); /* FF */
-webkit-border-radius: .5em;/* Webkit */
background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#eee));/* Webkit */
-pie-background:linear-gradient(top,  #ffffff,  #eee); /* ie */
background: linear-gradient(to bottom,  #ffffff,  #eee);/* IE10+, W3C */
}
 .title2:before,
 .post-contents h2:before{
content: "";
position:absolute;
top:0.5em;
left:0.4em;
width: .3em;             /* 四角形の横幅 */
height: 1em;            /* 四角形の縦幅 */
background: #002259;
}


/*-------------------見出し３-----------------------*/

 .title3,
 .post-contents h3{
  padding: 0 10px;
  border-left:3px solid #002259;
}



/*-------------------見出し４-----------------------*/
 
 .title4, 
 .post-contents h4{
color:#ffffff;
background:#002259;
}


/*-------------------見出しの書式-----------------------*/

 #wrapper h1,
 #wrapper h2,
 #wrapper h3,
 #wrapper h4{
  line-height:1.4;
}




/*-------------------見出し５-----------------------*/
 
 .title5, 
 .post-contents h5{
color:#002259;
background:#ffffff;
}





/*-------------------ヘッダーレイアウト-----------------------*/

header{
    background:#ffffff;
    width: 100%;
    z-index: 999;
}
header > .container{
    display: flex;
    align-items :center;
    padding-top:15px;
    padding-bottom:15px;
}
.logo{
    width:20%;
}
.header-right{
    width:80%;
}
.desktop-nav{
    width:100%;
}
.desktop-nav.fixed{
  position:fixed;
  top:0;
  left:0;
  z-index: 999;
}


/*-------------------ヘッダー装飾スタイル１-----------------------*/
 
 header{
  background:rgba(255,255,255,0.0);
  transition: 0.5s ;
}
 header.stick,
 header.stick .desktop-nav .sub-menu{
  background:#ffffff;
  transition: 0.5s ;
}

 

 


/*-------------------メニューレイアウト-----------------------*/

 .desktop-nav ul{
    display:flex;
    flex-wrap:wrap;/*折り返しあり*/
    align-items: center;
    justify-content: flex-end;/*右寄せ　指定しなければ左寄せになる*/
}
 .desktop-nav li {
    position: relative;
  	padding:0 5px;
}
 .desktop-nav li a {
  	text-align:center;
  	text-decoration:none;
    display:inline-block;
    padding:0.5em 1em;
    font-weight: bold;
    letter-spacing: 1px;
}
 .desktop-nav li span {
    display:block;
    text-align:center;
    font-size:0.8em;
}
 .desktop-nav li:hover > ul{
    box-shadow: 5px 0px 10px 3px rgba(0,0,0,0.3);
    -moz-box-shadow: 5px 0px 10px 3px rgba(0,0,0,0.3);
    -webkit-box-shadow: 5px 0px 10px 3px rgba(0,0,0,0.3);
}
 .desktop-nav li:hover > ul > li {
    overflow: visible;
    height: auto;
}
/*--子要素の指定
----------------------------------*/
 .desktop-nav li ul {
    position: absolute;
    z-index: 100;
    top: 100%;
    left: 0;
    width: 12em;
    margin: 0;
    padding: 0;
    transition: .2s;
}
/*
 .desktop-nav .navbar-nav > li:last-child > ul {
    position: absolute;
    left: -5em;
    right: 0;
}
*/
 .desktop-nav li ul li {
    overflow: hidden;
    width: 100%;
    height: 0;
    padding: 0; 
    margin: 0; 
}
 .desktop-nav li ul li a {
    display:block;
    text-align: left;
    padding:0.5em;;
    border-right: none; 
}
/*--孫要素の指定
----------------------------------*/
 .desktop-nav li ul li ul {
    top: 0;
    left: 100%;
}
/*--menu矢印 fontawsome--*/
.navbar-nav > .menu-item-has-children > a{
/*	padding-right:2em;*/
}
.navbar-nav > .menu-item-has-children > a{
	position:relative;
}
.navbar-nav > .menu-item-has-children > a:after{ 
	position:absolute;
	top:50%;
	right:0px;
	font-family: 'Font Awesome 5 Free';
	content:'\f078';
	margin-top:-0.9em;
	font-size: 0.8em;
    font-weight: bold;
}
.navbar-nav > .menu-item-has-children > .menu-item-has-children > a:after{ 
	display: inline-block;
	margin: 0 0.5em 0;
	font-family: 'Font Awesome 5 Free';
	content:'\f105';
	font-weight: bold;
	font-size: 0.8em;
}
/*--ボタンアイコン
----------------------------------*/
.icon-font a{
	position:relative;
	padding-left:2em!important;
}
.icon-font a:after{
	position:absolute;
	top:50%;
	left:0.7em;
	font-family: 'Font Awesome 5 Free';
	margin-top:-0.85em;
	font-size: 0.8em;
    font-weight: bold;
}
.icon-cart a:after{
	content:'\f07a';
}
.icon-login a:after{
	content:'\f2f6';
}
.icon-regist a:after{
	content:'\f007';
}
.icon-mail a:after{
	content:'\f0e0';
}
.mobile-nav{
    display: none;
}


/*-------------------メニューレイアウトの調整-----------------------*/

 .desktop-nav ul{
    display:flex;
  	flex-wrap:nowrap;
}
 .desktop-nav li {
  	width:100%;
  	text-align:center;
}
 .desktop-nav li ul{
  	flex-wrap:wrap;
}


/*-------------------メニュー装飾スタイル-----------------------*/

.desktop-nav{
  background:#ffffff;
}
 .desktop-nav ul li{
  border-left:1px dashed #cccccc;
}
 .desktop-nav ul li:last-child{
  border-right:1px dashed #cccccc;
}
/*--子要素
----------------------------------*/
 .desktop-nav li ul {
  background:#ffffff;
}
/*--孫要素
----------------------------------*/
 .desktop-nav li ul li ul {
  background:#ffffff;
}


/*-------------------メニューリンク装飾スタイル-----------------------*/

 .desktop-nav li a{
  position:relative;
  color:#222222;
}
 .desktop-nav li a::before{
  position: absolute;
  bottom: 0px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  border-bottom:1px solid #222222;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;
}

 .desktop-nav li.current-menu-item a::before,
 .desktop-nav li a:hover::before {
  transform: scale(1, 1);
}
 .desktop-nav li.current-menu-item a,
 .desktop-nav li.current-menu-item a::before,
 .desktop-nav li a:hover,
 .desktop-nav li a:hover::before{
  color:#2b5dac;
  border-color:#2b5dac;
}
 .desktop-nav li:hover > ul{
  background:#ffffff;
}



 
 
 

 

/*-------------------toggleスタイル-----------------------*/

    /*スマホ時のメニューボタンのスタイル
    ---------------------------------------------*/
     .toggle{
        padding: 10px 0px;
    }
     .menu-btn {
        overflow: hidden;
        display: block;
        position: relative;
        z-index: 0;
        height: 30px;
        cursor: pointer;
    }
     .menu-btn span,
     .menu-btn::before,
     .menu-btn::after {
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        left:0;
        right: 0;
        width: 30px;
        height: 2px;/*線の太さを変える*/
        margin: auto;
        background: #002259;
    }
     .menu-btn span {
        overflow: hidden;
        z-index: 1;
        color: #002259;
    }
     .menu-btn::before {
        z-index: 2;
        transform: translate(0, -12px);
        content: "";
    }
     .menu-btn::after {
        z-index: 2;
        transform: translate(0, 12px);
        content: "";
    }
     .menu-btn span {
        opacity: 1;
        transition: opacity 150ms 50ms;
    }
     .menu-btn::before,
     .menu-btn::after {
        transition: transform 200ms;
    }
     .menu-btn.active span {
        opacity: 0;
        transition: opacity 150ms;
    }
     .menu-btn.active::before {
        transform: rotate(45deg);
    }
     .menu-btn.active::after {
        transform: rotate(-45deg);
    }
     .menu-text{
        display:block;
        font-size:0.7em;
        width:100%;
        text-align:center;
        line-height:1;
        margin-top:5px;
      	color:#222222;
    }



 

/*-------------------インデックスページ（index.php）-----------------------*/
 
.page-header.index-page{
	background:#002259;
}

 


 




/*-------------------カスタムページ（page-custom2.php）-----------------------*/
 
.column-2-page.container{
  padding-top:90px;
  padding-bottom:90px;
}

 



/*-------------------一覧ページ(archive.php)-----------------------*/
 
.page-header.archive-page{
	background:#002259;
}


/*-------------------検索スタイル-----------------------*/
#searchStyle {
  position: relative;
  width: 100%;
  overflow: hidden;
  height: 3em; }
  #searchStyle #s {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    padding: 0 6em 0 0.5em;
    position: absolute;
    top: 0;
    left: 0;
    border: 1px solid #1aa7e81;
    border-radius: 5px; }
  #searchStyle #searchButton {
    position: absolute;
    margin: 0;
    top: 50%;
    right: 5px;
    margin-top: -1em; }
  #searchStyle i {
    font-size: 1.5em; }

/*-------------------左サイド内リスト-----------------------*/
 #left .widget_archive ul, #left .widget_recent_comments ul, #left .widget_recent_entries ul, #left .widget_text ul, #left .widget_categories ul, #left .widget_nav_menu ul, #left .widget_meta ul{
padding:0px;
margin:0px;
list-style:none;
/*line-height:1;*/
}
 #left .widget_archive ul li,
 #left .widget_recent_comments ul li,
 #left .widget_recent_entries ul li,
 #left .widget_text ul li,
 #left .widget_categories ul li,
 #left .widget_nav_menu ul li,
 #left .widget_meta ul li{
	width:100%;
	padding:0px;
	position:relative;
}
 #left .widget_archive ul li span,
 #left .widget_archive ul li a ,
 #left .widget_recent_comments ul li span,
 #left .widget_recent_comments ul li a ,
 #left .widget_recent_entries ul li span,
 #left .widget_recent_entries ul li a ,
 #left .widget_text ul li span,
 #left .widget_text ul li a ,
 #left .widget_categories ul li span,
 #left .widget_categories ul li a ,
 #left .widget_nav_menu ul li span,
 #left .widget_nav_menu ul li a ,
 #left .widget_meta ul li span,
 #left .widget_meta ul li a {
	color:#222222;
	display:block;
	padding:10px 30px 10px 10px;
	border-bottom:solid 1px #eee;
}
 #left .widget_archive ul li a:hover ,
 #left .widget_recent_comments ul li a:hover ,
 #left .widget_recent_entries ul li a:hover ,
 #left .widget_text ul li a:hover ,
 #left .widget_categories ul li a:hover ,
 #left .widget_nav_menu ul li a:hover ,
 #left .widget_meta ul li a:hover {
	color:#002259;
}
/*--リストマークのスタイル--*/
 #left .widget_archive ul li a:after,
/*--リストマークのスタイル--*/
 #left .widget_recent_comments ul li a:after,
/*--リストマークのスタイル--*/
 #left .widget_recent_entries ul li a:after,
/*--リストマークのスタイル--*/
 #left .widget_text ul li a:after,
/*--リストマークのスタイル--*/
 #left .widget_categories ul li a:after,
/*--リストマークのスタイル--*/
 #left .widget_nav_menu ul li a:after,
/*--リストマークのスタイル--*/
 #left .widget_meta ul li a:after{
display: block;
position: absolute;
top: 50%;
right: 0.5em;
width: 0.5em;
height: 0.5em;
margin-top:-0.3em;
border-top: solid 2px #002259;
border-right: solid 2px #002259;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
content: "";
}

 
 

/*-------------------メインコンテンツ内リスト-----------------------*/

 main .widget_archive ul,
 main .widget_recent_comments ul,
 main .widget_recent_entries ul,
 main .widget_text ul,
 main .widget_categories ul,
 main .widget_nav_menu ul,
 main .widget_meta ul{
padding:0;
margin:0;
}
 main .widget_archive ul li span,
 main .widget_recent_comments ul li span,
 main .widget_recent_entries ul li span,
 main .widget_text ul li span,
 main .widget_categories ul li span,
 main .widget_nav_menu ul li span,
 main .widget_meta ul li span{
color:#222222;
}
 main .widget_archive ul li:hover ,
 main .widget_recent_comments ul li:hover ,
 main .widget_recent_entries ul li:hover ,
 main .widget_text ul li:hover ,
 main .widget_categories ul li:hover ,
 main .widget_nav_menu ul li:hover ,
 main .widget_meta ul li:hover {
text-decoration:none;
}
 main .widget_archive ul li,
 main .widget_recent_comments ul li,
 main .widget_recent_entries ul li,
 main .widget_text ul li,
 main .widget_categories ul li,
 main .widget_nav_menu ul li,
 main .widget_meta ul li{
position: relative;
padding:10px 0 10px 1.3em;
}
 main .widget_archive ul li a,
 main .widget_recent_comments ul li a,
 main .widget_recent_entries ul li a,
 main .widget_text ul li a,
 main .widget_categories ul li a,
 main .widget_nav_menu ul li a,
 main .widget_meta ul li a{
display:block;
}
/*--リストマークの●型スタイル--*/
 main .widget_archive ul li:before  ,
/*--リストマークの●型スタイル--*/
 main .widget_recent_comments ul li:before  ,
/*--リストマークの●型スタイル--*/
 main .widget_recent_entries ul li:before  ,
/*--リストマークの●型スタイル--*/
 main .widget_text ul li:before  ,
/*--リストマークの●型スタイル--*/
 main .widget_categories ul li:before  ,
/*--リストマークの●型スタイル--*/
 main .widget_nav_menu ul li:before  ,
/*--リストマークの●型スタイル--*/
 main .widget_meta ul li:before  {
display: block;
content: "";
position: absolute;
top: 10px;
left: 0em;
width: 0.8em;
height: 0.8em;
border-radius: 50%;
background: #002259;
  margin-top:0.4em;
  line-height:1;
}
/*--リストマークの矢印型スタイル--*/
 main .widget_archive ul li:after  ,
/*--リストマークの矢印型スタイル--*/
 main .widget_recent_comments ul li:after  ,
/*--リストマークの矢印型スタイル--*/
 main .widget_recent_entries ul li:after  ,
/*--リストマークの矢印型スタイル--*/
 main .widget_text ul li:after  ,
/*--リストマークの矢印型スタイル--*/
 main .widget_categories ul li:after  ,
/*--リストマークの矢印型スタイル--*/
 main .widget_nav_menu ul li:after  ,
/*--リストマークの矢印型スタイル--*/
 main .widget_meta ul li:after  {
display: block;
position: absolute;
top: 10px;
left: 0.1em;
width: .4em;
height: .4em;
border-top: solid .1em #ffffff;
border-right: solid .1em #ffffff;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
content: "";
  margin-top:0.6em;
  line-height:1;
}
 main .widget_archive ul li ul,
 main .widget_recent_comments ul li ul,
 main .widget_recent_entries ul li ul,
 main .widget_text ul li ul,
 main .widget_categories ul li ul,
 main .widget_nav_menu ul li ul,
 main .widget_meta ul li ul{
margin:0.5em  0 -0.5em 0;
}



/*-------------------シングルパーツ(content.php)-----------------------*/

.nav-box {
  margin: 0.5em 0;
  padding: 0.5em 0;
}
.nav-box .prev {
  width: 49%;
  float: left;
  text-align: left;
}
.nav-box .next {
  width: 49%;
float: right;
text-align: right;
}







/*-------------------単一スタイル-----------------------*/
 

.date-label{
  padding-bottom:15px;
  color:#aaa;
}
.post-contents{
  border-top:1px solid #ccc;
  border-bottom:1px solid #ccc;
  margin-top:15px;
  margin-bottom:15px;
  padding-top:15px;
  padding-bottom:15px;
}


 



/*-------------------右サイド内リスト-----------------------*/
 #right .widget_archive ul, #right .widget_recent_comments ul, #right .widget_recent_entries ul, #right .widget_text ul, #right .widget_categories ul, #right .widget_nav_menu ul, #right .widget_meta ul{
padding:0px;
margin:0px;
list-style:none;
/*line-height:1;*/
}
 #right .widget_archive ul li,
 #right .widget_recent_comments ul li,
 #right .widget_recent_entries ul li,
 #right .widget_text ul li,
 #right .widget_categories ul li,
 #right .widget_nav_menu ul li,
 #right .widget_meta ul li{
	width:100%;
	padding:0px;
	position:relative;
}
 #right .widget_archive ul li span,
 #right .widget_archive ul li a ,
 #right .widget_recent_comments ul li span,
 #right .widget_recent_comments ul li a ,
 #right .widget_recent_entries ul li span,
 #right .widget_recent_entries ul li a ,
 #right .widget_text ul li span,
 #right .widget_text ul li a ,
 #right .widget_categories ul li span,
 #right .widget_categories ul li a ,
 #right .widget_nav_menu ul li span,
 #right .widget_nav_menu ul li a ,
 #right .widget_meta ul li span,
 #right .widget_meta ul li a {
	color:#222222;
	display:block;
	padding:10px 30px 10px 10px;
	border-bottom:solid 1px #eee;
}
 #right .widget_archive ul li a:hover ,
 #right .widget_recent_comments ul li a:hover ,
 #right .widget_recent_entries ul li a:hover ,
 #right .widget_text ul li a:hover ,
 #right .widget_categories ul li a:hover ,
 #right .widget_nav_menu ul li a:hover ,
 #right .widget_meta ul li a:hover {
	color:#002259;
}
/*--リストマークのスタイル--*/
 #right .widget_archive ul li a:after,
/*--リストマークのスタイル--*/
 #right .widget_recent_comments ul li a:after,
/*--リストマークのスタイル--*/
 #right .widget_recent_entries ul li a:after,
/*--リストマークのスタイル--*/
 #right .widget_text ul li a:after,
/*--リストマークのスタイル--*/
 #right .widget_categories ul li a:after,
/*--リストマークのスタイル--*/
 #right .widget_nav_menu ul li a:after,
/*--リストマークのスタイル--*/
 #right .widget_meta ul li a:after{
display: block;
position: absolute;
top: 50%;
right: 0.5em;
width: 0.5em;
height: 0.5em;
margin-top:-0.3em;
border-top: solid 2px #002259;
border-right: solid 2px #002259;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
content: "";
}

 

/*-------------------右サイド見出し-----------------------*/
 
 .title-right-side {
  padding: 10px;
  border-top:2px solid #002259;
  color: #002259;
  border-bottom:1px dotted #ccc;
}

 












/*-------------------一覧スタイル-----------------------*/
 
.archive-list .list-contents{
  padding:10px 0;
}
.archive-list .tag-box,
.archive-list .category-box{
  padding:10px 0;
  font-size:0.8em;
}
.archive-list .btn-box{
  text-align:right;
}






/*-------------------一覧レイアウト-----------------------*/

.archive-list{
  display:flex;
  flex-wrap:wrap;
}
.archive-list li{
  width:49%;
  margin-left:2%;
  margin-bottom:15px;
}
.archive-list li:nth-child(2n+1) {
  margin-left: 0;
}




 


 

/*-------------------最近の投稿(画像無し)-----------------------*/

.recent-posts{
  padding:10px;  
}
.recent-posts li{
  border-bottom:1px dotted #002259;
  padding:10px 0;
}
.recent-posts li .title,
.recent-posts li .date{
  display:inline-block;
}
.recent-posts li .date{
  width:20%;
}
.recent-posts li .category-box{
  padding:10px 0;
}





/*-------------------テーブルスタイル-----------------------*/
.tableStyle {
  border-collapse: collapse;
  border-top-width: 1px;
  border-right-width: 1px;
  border-top-style: solid;
  border-right-style: solid;
  border-top-color: #ccc;
  border-right-color: #ccc;
  width: 100%; }
  .tableStyle th {
    padding: 10px; }
  .tableStyle tr th,
  .tableStyle td {
    padding: 10px;
    border-bottom-width: 1px;
    border-left-width: 1px;
    border-bottom-style: solid;
    border-left-style: solid;
    border-bottom-color: #ccc;
    border-left-color: #ccc; }
  .tableStyle tr th{
    background-color: #eee;
}

/*-------------------テーブルレイアウト-----------------------*/

.tableLayout {
  table-layout: fixed;/*IEなどで、テーブル内でinputを使うと、はみ出る不具合を防ぐ*/
  border-collapse: collapse;
  border-spacing: 0; }
.tableLayout th, .tableLayout td {
  padding: 10px; }
@media screen and (max-width: 1000px) {
  .tableLayout th, .tableLayout td {
    display: block; } }



/*-------------------テーブルスタイル2-----------------------*/
.tableStyle2 {
  border-collapse: collapse;
  width: 100%; }
  .tableStyle2 th {
    padding: 10px; }
  .tableStyle2 tr th,
  .tableStyle2 td {
    padding: 10px;}
  .tableStyle2 tr:nth-child(odd) {
    background-color: #eee;
}


/*-------------------inputボタンスタイル-----------------------*/

input[type="submit"],input[type="button"] {
  display: inline-block;
  transition: all 0.5s;
  text-transform: uppercase;
  text-decoration:none;
  letter-spacing: 1px;
  font-weight: 400;
  background: #002259;
  border: 1px solid #002259;
  border-radius:5px;
  color: #ffffff; }

  input[type="submit"]:hover,input[type="button"]:hover {
    background: #ffffff;
    text-decoration:none;
    color: #002259; }




/*-------------------アンカーボタンスタイル-----------------------*/

a.btn-main,button.btn-main,.desktop-nav li.btn-main a,input[type="button"].btn-main,input[type="submit"].btn-main {
  display: inline-block;
  transition: all 0.5s;
  text-transform: uppercase;
  text-decoration:none;
  letter-spacing: 1px;
  font-weight: 400;
  background: #002259;
  border: 1px solid #002259;
  border-radius:5px;
  color: #ffffff; }

  a.btn-main:hover,button.btn-main:hover,.desktop-nav li.btn-main a:hover,input[type="button"].btn-main:hover,input[type="submit"].btn-main:hover {
    background: #ffffff;
    text-decoration:none;
    color: #002259; }




/*-------------------ボタンサイズ-----------------------*/

 .btn-s{
line-height:1;
padding:5px 10px!important;
}
 input[type="submit"],
 input[type="button"],
 .btn-m{
line-height:1;
padding:10px 20px;
}
 .btn-l{
line-height:1;
padding:20px 40px;
}
 .btn-ll{
line-height:1;
padding:30px 60px;
}




/*-------------------アクセントボタン-----------------------*/

a.btn-accent,button.btn-accent,.desktop-nav li.btn-accent a,input[type="button"].btn-accent,input[type="submit"].btn-accent {
  display: inline-block;
  transition: all 0.5s;
  text-transform: uppercase;
  text-decoration:none;
  letter-spacing: 1px;
  font-weight: 400;
  background: #1aa7e8;
  border: 1px solid #1aa7e8;
  border-radius:5px;
  color: #ffffff; }

  a.btn-accent:hover,button.btn-accent:hover,.desktop-nav li.btn-accent a:hover,input[type="button"].btn-accent:hover,input[type="submit"].btn-accent:hover {
    background: #ffffff;
    text-decoration:none;
    color: #1aa7e8; }




/*-------------------サブボタン-----------------------*/

a.btn-sub,button.btn-sub,.desktop-nav li.btn-sub a,input[type="button"].btn-sub,input[type="submit"].btn-sub,input[type="button"][class^="back_"],input[type="submit"][class^="back_"] {
  display: inline-block;
  transition: all 0.5s;
  text-transform: uppercase;
  text-decoration:none;
  letter-spacing: 1px;
  font-weight: 400;
  background: #4d72ac;
  border: 1px solid #4d72ac;
  border-radius:5px;
  color: #ffffff; }

  a.btn-sub:hover,button.btn-sub:hover,.desktop-nav li.btn-sub a:hover,input[type="button"].btn-sub:hover,input[type="submit"].btn-sub:hover,input[type="button"][class^="back_"]:hover,input[type="submit"][class^="back_"]:hover {
    background: #ffffff;
    text-decoration:none;
    color: #4d72ac; }




/*-------------------ページャー-----------------------*/
 .pagenation {
    margin: 1em 0;
}
 .pagenation:after,  .pagenation ul:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}
 .pagenation ul {
    margin: 0;
}
 .pagenation li {
    float: left;
    list-style: none outside none;
    margin-left: 3px;
}
 .pagenation li:first-child {
    margin-left: 0;
}
 .pagenation li.active {
    background-color: #002259;
    border-radius: 5px;
    color: #ffffff;
    cursor: not-allowed;
    padding: 10px 20px;
}
 .pagenation li a {
    background: none repeat scroll 0 0 #ccc;
    border-radius: 5px;
    color: #ffffff;
    display: block;
    padding: 10px 20px;
    text-decoration: none;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
}
 .pagenation li a:hover {
    background-color: #2b5dac;
    color: #ffffff;
    opacity: 0.8;
    transition-duration: 500ms;
    transition-property: all;
    transition-timing-function: ease;
}

/*-------------------カテゴリースタイル-----------------------*/

.btn-category {
  display: inline-block;
  transition: all 0.5s;
  text-transform: uppercase;
  text-decoration:none;
  letter-spacing: 1px;
  font-weight: 400;
  border: 1px solid #002259;
  border-radius:5px;
  color:#002259;
  background:#ffffff;
}
  .btn-category:hover {
    background: #002259;
    text-decoration:none;
    color: #ffffff; }








/*-------------------タグスタイル-----------------------*/

.btn-tag {
  display: inline-block;
  transition: all 0.5s;
  text-transform: uppercase;
  text-decoration:none;
  letter-spacing: 1px;
  font-weight: 400;
  border: 1px solid #002259;
  border-radius:5px;
  color:#002259;
  background:#ffffff;
}
  .btn-tag:hover {
    background: #002259;
    text-decoration:none;
    color: #ffffff; }








/*-------------------リストスタイル-----------------------*/

 ul.list-style{
padding:0;
margin:0;
}
 ul.list-style li{
padding:0.5em 0.3em 0.5em 0em;
margin-left:0.5em;
line-height:1.5;
}
 ul.list-style li span{
color:#222222;
}
 ul.list-style li:hover {
text-decoration:none;
}
 ul.list-style li{
position: relative;
padding:0.5em 0 0.5em 1em;
}
 ul.list-style li a{
display:block;
}
/*--リストマークの矢印型スタイル--*/
 ul.list-style li:after  {
display: block;
position: absolute;
top: 1em;
left: 0em;
width: .4em;
height: .4em;
border: 5px solid transparent;
border-left: 5px solid #002259;
content: "";
}
 ul.list-style li ul{
margin:0.5em  0 -0.5em 0;
}


 

/*-------------------リストスタイル3-----------------------*/

 ul.list-style3{
  padding:0;
  margin:0;
  counter-reset: counter;
  list-style: none;
}
 ul.list-style3 li {
  line-height: 1.5;
  padding:10px 0 10px 1.5em;
  position: relative;
}
 ul.list-style3 li:before {
  content:counter(counter)".";
  counter-increment: counter;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 1.5em;
  width: 1.5em;
  line-height: 1;
  position: absolute;
  top: 0;
  left: 0;
  margin-top:10px;
}
 ul.list-style3 ul{
  counter-reset: counter;
}
 ul.list-style3 ul li{
  padding:10px 0 0 2em;
}
 ul.list-style3 ul li:before{
  content:"("counter(counter)")";  
  width: 1.8em;
}


/*-------------------カレンダースタイル-----------------------*/
table#wp-calendar {
  text-align: center;
  border-collapse: collapse;
  border-top-width: 1px;
  border-right-width: 1px;
  border-top-style: solid;
  border-right-style: solid;
  border-top-color: #2b5dac;
  border-right-color: #2b5dac;
  width: 100%; }
  table#wp-calendar th {
    background: #002259;
    color: #ffffff;
    text-align: center;
    padding: 5px; }
  table#wp-calendar tr th {
    border-bottom-width: 1px;
    border-left-width: 1px;
    border-bottom-style: solid;
    border-left-style: solid;
    border-bottom-color: #2b5dac;
    border-left-color: #2b5dac; }
  table#wp-calendar td {
    text-align: center;
    padding: 5px;
    border-bottom-width: 1px;
    border-left-width: 1px;
    border-bottom-style: solid;
    border-left-style: solid;
    border-bottom-color: #2b5dac;
    border-left-color: #2b5dac; }
  table#wp-calendar caption {
    font-weight: bold;
    text-align: left; }
  table#wp-calendar tbody tr #today {
    background: #002259;
    color: #ffffff; }
  table#wp-calendar tbody tr #today a {
    color: #ffffff; }





/*-------------------inputスタイル-----------------------*/

 input[type="text"],
 input[type="email"],
 input[type="tel"],
 input[type="number"],
 input[type="password"],
 select,
 textarea{
color:#222222;  
border:solid 1px #ccc;
border-radius:5px;
  background:#ffffff;
}
 input:focus {
    border:solid 1px #002259;
}



/*-------------------inputレイアウト-----------------------*/

 input[type="text"],
 input[type="email"],
 input[type="password"],
 input[type="tel"],
 input[type="number"],
 select,
 textarea{
width:100%;
padding:5px 10px;
}
 input[type="tel"],
 input[type="number"],
 select{
width:auto;
}





 














/*-------------------javascript1-----------------------*/
 
.overlay-right,
.overlay-left{
  content: "";
  position: absolute;
  top:0;
/*  background: #ffffff;*/
  height: 100%;
  width: 100%;
  z-index: 999;
}
.overlay-right{
  right:0;
}
.overlay-left{
  left:0;
}
.sequence-fadeUp > span,
.sequence-fadeRight > span{
  display:inline-block;
}








 





/*-------------------javascript4-----------------------*/
 
/* sidebar追従
-----------------------------*/
#wrapper .contents-main{
    position:relative;
    align-items:flex-start;
}
#right,#left{
    positoion:absolute;
}












/*-------------------フッターレイアウト-----------------------*/

 #footer .footer-body .container{
	padding-top:30px;
	padding-bottom:30px;
}
 #copyright{
	padding-top:30px;
	padding-bottom:30px;
}
 #footer .footer-sns ul{
  display:flex;
  justify-content:center;
	padding-top:30px;
	padding-bottom:30px;  
}
 #footer .footer-sns ul li{
  padding-left:10px;  
  padding-right:10px;
  font-size:36px;
}


/*-------------------javascript5-----------------------*/

body::after {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color:#fff;
  z-index: 9999;
  pointer-events: none;
  opacity: 0;
  -webkit-transition: opacity .8s ease;  /* アニメーション時間は 0.8秒 */
 -ms- transition: opacity .8s ease;
 -moz- transition: opacity .8s ease;
  transition: opacity .8s ease;
}
/*body要素に.fadeoutセレクタがある場合には、レイヤーが表示されるようにopacityを１に設定します。*/
body.fadeout::after {
  opacity: 1;
}
.mask {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color:#fff;
  z-index: 9999;
  pointer-events: none;
  animation: fadeIn 1s ease 0s 1 normal;
  -webkit-animation: fadeIn 1s ease 0s 1 normal;  
  opacity: 0;
}
@keyframes fadeIn {
    0% {opacity: 1}
    100% {opacity: 0}
}
@-webkit-keyframes fadeIn {
    0% {opacity: 1}
    100% {opacity: 0}
}









/*-------------------javascript7-----------------------*/
 
#to_top {
    position: fixed;
    bottom: 20px;
    right: 15px;
  z-index:999;
}
#to_top a {
  display:inline-block;
    background-color: #002259;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
    padding: 10px 20px;
  line-height:1.3;
  border-radius:5px;
  border:1px solid #ffffff;
}
#to_top a .text{
  font-size:12px;
}
#to_top a:hover {
    background-color: #2b5dac;
    text-decoration: none;
}

 
 

/*-------------------copyrightレイアウト-----------------------*/

 #copyright{
  padding-top:15px;
  padding-bottom:15px;
}
 #copyright .copyright-left{
  text-align:left;
}
 #copyright .copyright-right{
  text-align:right;
}
 #copyright .footer-logo{
  max-height:60px;
  max-width:250px;
}




/*-------------------footer内リスト-----------------------*/

 #footer .widget_archive ul,
 #footer .widget_recent_comments ul,
 #footer .widget_recent_entries ul,
 #footer .widget_text ul,
 #footer .widget_categories ul,
 #footer .widget_nav_menu ul,
 #footer .widget_meta ul{
padding:0;
margin:0;
}
 #footer .widget_archive ul li,
 #footer .widget_recent_comments ul li,
 #footer .widget_recent_entries ul li,
 #footer .widget_text ul li,
 #footer .widget_categories ul li,
 #footer .widget_nav_menu ul li,
 #footer .widget_meta ul li{
padding:0.5em 0.3em 0.5em 0em;
margin-left:0.5em;
line-height:1.5;
}
 #footer .widget_archive ul li span,
 #footer .widget_recent_comments ul li span,
 #footer .widget_recent_entries ul li span,
 #footer .widget_text ul li span,
 #footer .widget_categories ul li span,
 #footer .widget_nav_menu ul li span,
 #footer .widget_meta ul li span{
color:#222222;
}
 #footer .widget_archive ul li:hover ,
 #footer .widget_recent_comments ul li:hover ,
 #footer .widget_recent_entries ul li:hover ,
 #footer .widget_text ul li:hover ,
 #footer .widget_categories ul li:hover ,
 #footer .widget_nav_menu ul li:hover ,
 #footer .widget_meta ul li:hover {
text-decoration:none;
}
 #footer .widget_archive ul li,
 #footer .widget_recent_comments ul li,
 #footer .widget_recent_entries ul li,
 #footer .widget_text ul li,
 #footer .widget_categories ul li,
 #footer .widget_nav_menu ul li,
 #footer .widget_meta ul li{
position: relative;
padding:0.5em 0 0.5em 1em;
}
 #footer .widget_archive ul li a,
 #footer .widget_recent_comments ul li a,
 #footer .widget_recent_entries ul li a,
 #footer .widget_text ul li a,
 #footer .widget_categories ul li a,
 #footer .widget_nav_menu ul li a,
 #footer .widget_meta ul li a{
display:block;
}
/*--リストマークの矢印型スタイル--*/
 #footer .widget_archive ul li:after  ,
/*--リストマークの矢印型スタイル--*/
 #footer .widget_recent_comments ul li:after  ,
/*--リストマークの矢印型スタイル--*/
 #footer .widget_recent_entries ul li:after  ,
/*--リストマークの矢印型スタイル--*/
 #footer .widget_text ul li:after  ,
/*--リストマークの矢印型スタイル--*/
 #footer .widget_categories ul li:after  ,
/*--リストマークの矢印型スタイル--*/
 #footer .widget_nav_menu ul li:after  ,
/*--リストマークの矢印型スタイル--*/
 #footer .widget_meta ul li:after  {
display: block;
position: absolute;
top: 1em;
left: 0em;
width: .4em;
height: .4em;
border: 5px solid transparent;
border-left: 5px solid #002259;
content: "";
}
 #footer .widget_archive ul li ul,
 #footer .widget_recent_comments ul li ul,
 #footer .widget_recent_entries ul li ul,
 #footer .widget_text ul li ul,
 #footer .widget_categories ul li ul,
 #footer .widget_nav_menu ul li ul,
 #footer .widget_meta ul li ul{
margin:0.5em  0 -0.5em 0;
}


 
 
 


/*-------------------コンポーネント-----------------------*/

.big-btn-sub,
.big-btn-main{
  position:relative;
  background:rgba(255, 255, 255, 0.5);
  color:#002259;
  border: 4px #002259 solid;
  border-radius: 5px;
  -moz-border-radius: 5px; /* FF */
  -webkit-border-radius: 5px;/* Webkit */
  display:flex!important;
  flex-wrap: wrap;
  justify-content:center;
  align-content:center;
  flex-direction:row;
  align-items:center;
}
.big-btn-sub{
    border: 4px #2b5dac solid;
    color:#2b5dac;
}
.big-btn-sub a,
.big-btn-main a{
  display:block;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:99;
}
.big-btn-hight{
  height:500px;
}
.big-btn-middle{
  height:300px;
}
.big-btn-low{
  height:100px;
}


/*-------------------コンポーネント２-----------------------*/

.hover-scale{
  display:block;
  position: relative;
  width: 100%;
  padding-top: 65%;
  overflow: hidden;
  margin: 0 auto;
  transition-duration: 0.5s; /*変化の時間*/
}
.hover-scale img {
    position: absolute;
    top: 0%;
    left: 0%;
    -moz-transition: -moz-transform 0.5s linear;
    -webkit-transition: -webkit-transform 0.5s linear;
    -o-transition: -o-transform 0.5s linear;
    -ms-transition: -ms-transform 0.5s linear;
    transition: transform 0.5s linear;
}
.hover-scale.h-30{
  padding-top: 30%;  
}
.hover-scale.h-50{
  padding-top: 50%;  
}
.hover-scale.h-75{
  padding-top: 75%;  
}
.hover-scale.h-100{
  padding-top: 100%;  
}
.hover-scale .hover-contents {
  width:100%;
  height:100%;
    position: absolute;
    top: 0%;
    left: 0%;
}
.hover-scale:hover img{
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2); 
}


 
 
 
 
 
 
 




 
 

/*-------------------よくある質問-----------------------*/
.faq-box .contents-box{
border:2px solid #002259;
padding:1em;
margin-bottom:2em;
}
.faq-box .question{
position: relative;
padding:1em 0 1em 2.5em;
line-height:1.5;
font-weight:bold;
background:#d4e4fc;
}
.faq-box .question:before,.faq-box .answer:before {
content: "Q";
color:#ffffff;
background: #002259;
border:1px solid #002259;
}
.faq-box .answer{
position: relative;
padding:1em 0 1em 2.5em;
line-height:1.5;
}
.faq-box .answer:before {
content: "A";
background: #1aa7e8;
border:1px solid #1aa7e8;
padding-bottom:0.2em;
}
.faq-box .question:before,.faq-box .answer:before {
font-weight:bold;
text-align:center;
padding:0em 0.2em 0.5em 0.2em;
border-radius:5px;
position: absolute;
top: 1em;
left: 0.5em;
height: 1.5em;
width: 1.5em;
}


 

/*-------------------ユーティリティ１-----------------------*/

.overlay-black1 {
background:rgba(0, 0, 0, 0.9);
color:#fff;
}
.overlay-black2 {
background:rgba(0, 0, 0, 0.7);
color:#fff;
}
.overlay-black3 {
background:rgba(0, 0, 0, 0.5);
color:#fff;
}
.overlay-black4 {
background:rgba(0, 0, 0, 0.3);
color:#fff;
}
.overlay-black5 {
background:rgba(0, 0, 0, 0.1);
color:#fff;
}
.overlay-white1 {
background:rgba(255, 255, 255, 0.9);
}
.overlay-white2 {
background-color:rgba(255, 255, 255, 0.7);
}
.overlay-white3 {
background:rgba(255, 255, 255, 0.5);
}
.overlay-white4 {
background:rgba(255, 255, 255, 0.3);
}
.overlay-white5 {
background:rgba(255, 255, 255, 0.1);
}
.overlay-a1,
.overlay-m,
.overlay-s1{
position: relative;
color:#ffffff;
}
.overlay-a1:before,
.overlay-m:before,
.overlay-s1:before{
width:100%;
height:100%;  
position:absolute;
background:#002259;
top: 0;
left: 0;
content: "";
background:#002259;
z-index:-1;
opacity:0.7;  
}
.overlay-a1:before{
background:#1aa7e8;  
}
.overlay-s1:before{
background:#2b5dac;
}


/*-------------------ユーティリティ２-----------------------*/

.narrow{
  width:80%;
  margin-left:auto;
  margin-right:auto;
}
ul.column-5,ul.column-4,ul.column-3,ul.column-2{
  display:flex;
  flex-wrap:wrap;/*折り返しあり*/
}
ul.column-2 li{width:50%;}
ul.column-3 li{width:33.333%;}
ul.column-4 li{width:25%;}
ul.column-5 li{width:20%;}

ul.column-2 li:nth-child(2n+1),
ul.column-3 li:nth-child(3n+1),
ul.column-4 li:nth-child(4n+1),
ul.column-5 li:nth-child(5n+1) {

}
ul.li-margin{
  margin-left:-15px;
  margin-right:-15px;
}
ul.li-margin li{
  padding-left:15px;
  padding-right:15px;
}


/*-------------------ユーティリティ３-----------------------*/
 
/* ボーダー*/
.solid{
border-style: solid;
border-width:1px;
}
.bt-solid{
border-top-style: solid;
border-width:1px;  
}
.bb-solid{
border-bottom-style: solid;
border-width:1px;  
}
.bl-solid{
border-right-style: solid;
border-width:1px;  
}
.br-solid{
border-left-style: solid;
border-width:1px;  
}
.dotted{
border-style: dotted;
border-width:1px;    
}
.bt-dotted{
border-top-style: dotted;
border-width:1px;    
}
.bb-dotted{
border-bottom-style: dotted;
border-width:1px;    
}
.bl-dotted{
border-left-style: dotted;
border-width:1px;    
}
.br-dotted{
border-right-style: dotted;
border-width:1px;    
}
/* フォントカラー*/
.c-m{color:#002259;}
.c-s{color:#2b5dac;}
.c-s2{color:#4d72ac;}
.c-s3{color:#d4e4fc;}
.c-a{color:#1aa7e8;}
.c-a2{color:#51bff3;}
.c-a3{color:#7dcdf3;}

/* 背景カラー*/
.b-m{background:#002259;}
.b-s{background:#2b5dac;}
.b-s2{background:#4d72ac;}
.b-s3{background:#d4e4fc;}
.b-a{background:#1aa7e8;}
.b-a2{background:#51bff3;}
.b-a3{background:#7dcdf3;}
.b-b{background:#ffffff;}

/* ボーダーカラー*/
.bc-m{border-color:#002259;}
.bc-s{border-color:#2b5dac;}
.bc-s2{border-color:#4d72ac;}
.bc-s3{border-color:#d4e4fc;}
.bc-a{border-color:#1aa7e8;}
.btc-m{border-top-color:#002259;}
.btc-s{border-top-color:#2b5dac;}
.btc-s2{border-top-color:#4d72ac;}
.btc-s3{border-top-color:#d4e4fc;}
.btc-a{border-top-color:#1aa7e8;}
.bbc-m{border-bottom-color:#002259;}
.bbc-s{border-bottom-color:#2b5dac;}
.bbc-s2{border-bottom-color:#4d72ac;}
.bbc-s3{border-bottom-color:#d4e4fc;}
.bbc-a{border-bottom-color:#1aa7e8;}
.bc-g1{border-color:#333;}
.bc-g2{border-color:#999;}
.bc-g3{border-color:#aaa;}
.bc-g4{border-color:#ccc;}
.bc-g5{border-color:#eee;}
.bc-white{border-color:#fff;}
.gradation-main1{
background: #002259; /* Old browsers */
background: -moz-linear-gradient(left,  #002259 0%, #2b5dac 51%, #002259 100%); /* FF3.6+ */
background: -webkit-linear-gradient(left,  #002259 0%,#2b5dac 51%,#002259 100%); /* Opera 11.10+ */
background: linear-gradient(to right,  #002259 0%,#2b5dac 51%,#002259 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#002259', endColorstr='#2b5dac',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.gradation-main2{
background: #002259; /* Old browsers */
background: -moz-linear-gradient(left,  #002259 0%, #2b5dac 51%, #4d72ac 100%); /* FF3.6+ */
background: -webkit-linear-gradient(left,  #002259 0%,#2b5dac 51%,#4d72ac 100%); /* Opera 11.10+ */
background: linear-gradient(to right,  #002259 0%,#2b5dac 51%,#4d72ac 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#002259', endColorstr='#4d72ac',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.gradation-main3{
background: #002259; /* Old browsers */
background: -moz-linear-gradient(left,  #4d72ac 0%, #2b5dac 51%, #002259 100%); /* FF3.6+ */
background: -webkit-linear-gradient(left,  #4d72ac 0%,#2b5dac 51%,#002259 100%); /* Opera 11.10+ */
background: linear-gradient(to right,  #4d72ac 0%,#2b5dac 51%,#002259 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4d72ac', endColorstr='#002259',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.gradation-main4{
background: #4d72ac; /* Old browsers */
background: -moz-linear-gradient(left,  #4d72ac 0%, #002259 51%, #4d72ac 100%); /* FF3.6+ */
background: -webkit-linear-gradient(left,  #4d72ac 0%,#002259 51%,#4d72ac 100%); /* Opera 11.10+ */
background: linear-gradient(to right,  #4d72ac 0%,#002259 51%,#4d72ac 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4d72ac', endColorstr='#002259',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.gradation-sub1{
background: #subcolor; /* Old browsers */
background: -moz-linear-gradient(left,  #002259 0%, #4d72ac 51%, #002259 100%); /* FF3.6+ */
background: -webkit-linear-gradient(left,  #002259 0%,#4d72ac 51%,#002259 100%); /* Opera 11.10+ */
background: linear-gradient(to right,  #002259 0%,#4d72ac 51%,#002259 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#002259', endColorstr='#2b5dac',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.gradation-sub2{
background: #subcolor; /* Old browsers */
background: -moz-linear-gradient(left,  #4d72ac 0%, #2b5dac 51%, #4d72ac 100%); /* FF3.6+ */
background: -webkit-linear-gradient(left,  #4d72ac 0%,#2b5dac 51%,#4d72ac 100%); /* Opera 11.10+ */
background: linear-gradient(to right,  #4d72ac 0%,#2b5dac 51%,#4d72ac 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4d72ac', endColorstr='#2b5dac',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.gradation-accent1{
background: #1aa7e8; /* Old browsers */
background: -moz-linear-gradient(left,  #1aa7e8 0%, #51bff3 51%, #1aa7e8 100%); /* FF3.6+ */
background: -webkit-linear-gradient(left,  #1aa7e8 0%,#51bff3 51%,#1aa7e8 100%); /* Opera 11.10+ */
background: linear-gradient(to right,  #1aa7e8 0%,#51bff3 51%,#1aa7e8 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1aa7e8', endColorstr='#51bff3',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.gradation-accent2{
background: #1aa7e8; /* Old browsers */
background: -moz-linear-gradient(left,  #1aa7e8 0%, #51bff3 51%, #7dcdf3 100%); /* FF3.6+ */
background: -webkit-linear-gradient(left,  #1aa7e8 0%,#51bff3 51%,#7dcdf3 100%); /* Opera 11.10+ */
background: linear-gradient(to right,  #1aa7e8 0%,#51bff3 51%,#7dcdf3 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1aa7e8', endColorstr='#7dcdf3',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}


/*-------------------ユーティリティ４-----------------------*/
 
.text-shadow-black{
  text-shadow: 1px 2px 3px #808080;
}
.text-shadow-white{
  color:#fff;
  text-shadow: 1px 2px 3px #111;
}
.text-outline-white{
text-shadow: 2px 2px 0 #ffffff,
             -2px 2px 0 #ffffff,
             2px -2px 0 #ffffff,
             -2px -2px 0 #ffffff;
text-shadow: 2px 2px 1px #ffffff,
             -2px 2px 1px #ffffff,
             2px -2px 1px #ffffff,
             -2px -2px 1px #ffffff;
}
.marker-m{
background:linear-gradient(transparent 75%, #002259 75%);
font-weight:bold; 
}
.marker-s1{
background:linear-gradient(transparent 75%, #2b5dac 75%);
font-weight:bold; 
}
.marker-s2{
background:linear-gradient(transparent 75%, #4d72ac 75%);
font-weight:bold; 
}
.marker-s3{
background:linear-gradient(transparent 75%, #d4e4fc 75%);
font-weight:bold; 
}
.marker-a1{
background:linear-gradient(transparent 75%, #1aa7e8 75%);
font-weight:bold; 
}
.marker-a2{
background:linear-gradient(transparent 75%, #51bff3 75%);
font-weight:bold; 
}
.marker-a3{
background:linear-gradient(transparent 75%, #7dcdf3 75%);
font-weight:bold; 
}
.circle-a,
.circle-m{
  text-align:center;
  vertical-align:middle;
  width:1.3em;
  height:1.3em;
  display:inline-block;
  background:#002259;
  color:#ffffff;
  border-radius:50%;
}
.circle-a{
  background:#1aa7e8;
}

 
 

/*-------------------ユーティリティ5-----------------------*/

.required{
	display:block;
	background: #1aa7e8;
	color:#ffffff;
	float:right;
	width:3em;
	text-align:center;
	padding-left:0.2em;
	padding-right:0.2em;
  	border-radius: 5px;
}
.required2{
	display:block;
	background: #ffffff;
	color:#1aa7e8;
	float:right;
	width:3em;
	text-align:center;
	padding-left:0.2em;
	padding-right:0.2em;
	border:1px solid #1aa7e8;
  	border-radius: 5px;
}
.frame1 {
  	color:#ffffff;
    background: #002259;
    border: 1px dashed rgba(255,255,255,0.8);
	margin:0 5px 5px 5px;
    box-shadow: 0 0 0 5px #002259;
    -moz-box-shadow: 0 0 0 5px #002259;
    -webkit-box-shadow: 0 0 0 5px #002259;
	border-radius: 5px;
	-moz-border-radius: 5px; /* FF */
	-webkit-border-radius: 5px;/* Webkit */
}

.frame2 {
    border: 4px #002259 solid;
	border-radius: 5px;
	-moz-border-radius: 5px; /* FF */
	-webkit-border-radius: 5px;/* Webkit */
}
.frame3 {
    border: #002259 dashed 1px;
    background: #ffffff;
	border-radius: 5px;
	-moz-border-radius: 5px; /* FF */
	-webkit-border-radius: 5px;/* Webkit */
}
.frame4 {
    border: #002259 solid 1px;
    background: #ffffff;
	border-radius: 5px;
	-moz-border-radius: 5px; /* FF */
	-webkit-border-radius: 5px;/* Webkit */
}
.frame5 {
	box-shadow:0px 0px 5px 1px rgba(200,200,200,0.5);
	-moz-box-shadow:0px 0px 5px 1px rgba(200,200,200,0.5);
	-webkit-box-shadow:0px 0px 5px 1px rgba(200,200,200,0.5);
	border-radius: 5px;
	-moz-border-radius: 5px; /* FF */
	-webkit-border-radius: 5px;/* Webkit */
}
.frame6 {
    border: #002259 solid 2px;
    background: #d4e4fc;
	border-radius: 5px;
	-moz-border-radius: 5px; /* FF */
	-webkit-border-radius: 5px;/* Webkit */
}
.frame8 {
	background: #ffffff;
	border:1px solid #1aa7e8;
	border-radius: 5px;
	-moz-border-radius: 5px; /* FF */
	-webkit-border-radius: 5px;/* Webkit */
}
.frame9 {
    background: #1aa7e8;
    border: 1px dashed rgba(255,255,255,0.8);
	margin:0 5px 5px 5px;
    box-shadow: 0 0 0 5px #1aa7e8;
    -moz-box-shadow: 0 0 0 5px #1aa7e8;
    -webkit-box-shadow: 0 0 0 5px #1aa7e8;
	border-radius: 5px;
	-moz-border-radius: 5px; /* FF */
	-webkit-border-radius: 5px;/* Webkit */
}
.frame11 {
    border: #1aa7e8 solid 2px;
    background: #51bff3;
	border-radius: 5px;
	-moz-border-radius: 5px; /* FF */
	-webkit-border-radius: 5px;/* Webkit */
}
.frame12{
	background:#002259;
	color:#ffffff;
	border-radius:5px;
	padding:0.5em;
	font-weight:bold;
	display:inline-block;
	vertical-align:middle;
	margin-right:0.5em;
}
.frame13 {
    border: 2px #1aa7e8 solid;
    position: relative;
	border-radius: 5px;
	-moz-border-radius: 5px; /* FF */
	-webkit-border-radius: 5px;/* Webkit */
}
.frame13:before {
    content: "";
    position: absolute;
    margin: 2px;
    border: 2px #1aa7e8 solid;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    z-index: -1;
	border-radius: 5px;
	-moz-border-radius: 5px; /* FF */
	-webkit-border-radius: 5px;/* Webkit */
  background:#ffffff;
}
.frame14{
	background:#ccc;
	color:#ffffff;
	border-radius:5px;
	padding:0.1em 0.3em;
	font-weight:bold;
	display:inline-block;
	vertical-align:middle;
	margin-right:0.5em;
}
.frame15{
  position: relative;
  border: solid 2px #002259;
}
.frame15::before,
.frame15::after {
  position: absolute;
  content: "";
  display: block;
  background-color: #ffffff;
}
.frame15::before {
  top: -2px;
  bottom: -2px;
  left: 10px;
  right: 10px;
}
.frame15::after {
  top: 10px;
  bottom: 10px;
  left: -2px;
  right: -2px;
}
.frame15 .contents{
  position: relative;
  z-index: 1;  
}


/*-------------------ユーティリティ6-----------------------*/
/*-----下向き矢印-----*/
.arrow-main,
.arrow-sub,
.arrow-sub2,
.arrow-accent,
.arrow2-main,
.arrow2-sub,
.arrow2-sub2,
.arrow2-accent{
  position: relative;
  height: 2em;
}

.arrow-main:before,arrow-main:after,
.arrow-sub:before,arrow-sub:after,
.arrow-sub2:before,arrow-sub2:after,
.arrow-accent:before,arrow-accent:after,
.arrow2-main:before,arrow2-main:after,
.arrow2-sub:before,arrow2-sub:after,
.arrow2-sub2:before,arrow2-sub2:after,
.arrow2-accent:before,arrow2-accent:after{
  content: "";
  position: absolute;
  top: 0;
  height: 0;
  width: 0;
}

.arrow-main:before,
.arrow-sub:before,
.arrow-sub2:before ,
.arrow-accent:before {
  left: 50%;
  margin-left:-4em;
  border: 4em solid transparent;
}

.arrow2-main:before,
.arrow2-sub:before,
.arrow2-sub2:before ,
.arrow2-accent:before {
  left: 50%;
  margin-left:-2em;
  border: 2em solid transparent;
}

.arrow-main:before ,
.arrow2-main:before {
  border-top: 2em solid #002259;
}
.arrow-sub:before ,
.arrow2-sub:before {
  border-top: 2em solid #2b5dac;
}
.arrow-sub2:before ,
.arrow2-sub2:before {
  border-top: 2em solid #4d72ac;
}
.arrow-accent:before,
.arrow2-accent:before {
  border-top: 2em solid #1aa7e8;
}
/*-----右向き矢印-----*/
.arrow-r-main,
.arrow-r-sub,
.arrow-r-sub2,
.arrow-r-accent{
  position: relative;
  height: 8em;
}
.arrow2-r-main,
.arrow2-r-sub,
.arrow2-r-sub2,
.arrow2-r-accent{
  position: relative;
  height: 4em;
}

.arrow-r-main:before,arrow-r-main:after,
.arrow-r-sub:before,arrow-r-sub:after,
.arrow-r-sub2:before,arrow-r-sub2:after,
.arrow-r-accent:before,arrow-r-accent:after,
.arrow2-r-main:before,arrow2-r-main:after,
.arrow2-r-sub:before,arrow2-r-sub:after,
.arrow2-r-sub2:before,arrow2-r-sub2:after,
.arrow2-r-accent:before,arrow2-r-accent:after{
  content: "";
  position: absolute;
  top: 0;
  height: 0;
  width: 0;
}

.arrow-r-main:before,
.arrow-r-sub:before,
.arrow-r-sub2:before ,
.arrow-r-accent:before {
  left: 50%;
  margin-left:-1em;
  border: 4em solid transparent;
}

.arrow2-r-main:before,
.arrow2-r-sub:before,
.arrow2-r-sub2:before ,
.arrow2-r-accent:before {
  left: 50%;
  margin-left:-1em;
  border: 2em solid transparent;
}
.arrow-r-main:before ,
.arrow2-r-main:before {
  border-left: 2em solid #002259;
}
.arrow-r-sub:before ,
.arrow2-r-sub:before {
  border-left: 2em solid #2b5dac;
}
.arrow-r-sub2:before ,
.arrow2-r-sub2:before {
  border-left: 2em solid #4d72ac;
}
.arrow-r-accent:before,
.arrow2-r-accent:before {
  border-left: 2em solid #1aa7e8;
}


/*-------------------ユーティリティ7-----------------------*/

.overlay-wrapper{
  position: relative;
  height: calc(20vw + 200px);
}
.overlay-lb,
.overlay-lt{
  position:absolute;
  left:0;
  top:0;
}
.overlay-lb{
  top:auto;
  bottom:0;
}
.overlay-rb,
.overlay-rt{
  position:absolute;
  right:0;
  top:0;
}
.overlay-rb{
  top:auto;
  bottom:0;
}
.overlay-contents{
  position:absolute;
}
.p-b{
  bottom:0;
}
.p-t{
  top:0;
}
.p-l{
  left:0;
}
.p-r{
  right:0;
}


 

/*-------------------フリースタイル-----------------------*/
 
body{
  overflow-x:hidden;
}
.breadcrumbs{
  padding:15px 0;
}
#right h3{
  margin-top:30px;
  margin-bottom:15px;
}
#right .widgetArea:first-child  h3:first-child{
  margin-top:0;
}
#left h3{
  margin-top:30px;
  margin-bottom:15px;
}
#left .widgetArea:first-child  h3:first-child{
  margin-top:0;
}
.title-first{
  line-height:1;
  margin-bottom:15px;
}
main .title-top:first-child{
  margin-bottom:15px;
}
.mincho{
font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.frontpage-header{
position:relative;  
height:100vh;
  overflow:hidden;
}
.page-header{
height:400px;
position:relative;
  overflow:hidden;
}
.page-header .header-container,
.frontpage-header .header-container{
position:absolute;
width:100%;
top:0;
left:0;
display:flex;
flex-wrap:wrap;/*折り返しあり*/
justify-content :center;
align-items :center;
height:100%;
}
.header-mask{
background:rgba(0, 0, 0, 0.3);
color:#fff;
}
.wpcf7-form-control-wrap{
  width:100%;
}
div.wpcf7 .ajax-loader {
    display: none !important;
}


/*-------------------ステップボックス-----------------------*/

.step-box{
  margin-top:25px;
  margin-bottom:25px;
  border:3px solid #d4e4fc;
  border-radius:5px;
}
.step-box .step{
  line-height:1;
  display:inline-block;
  color:#d4e4fc;
  border:3px solid #002259;
  background:#002259;
  border-radius:5px;
  padding:5px;
}
.step-box .step-box-title{
  border-bottom:1px solid #d4e4fc;
  padding-bottom:5px;
}
.step-box .step-box-right,
.step-box .step-box-left{
  padding:15px;
}



/*-------------------フリースタイル２-----------------------*/
 
.desktop-nav{
  padding-bottom:5px;
}

 



/*-------------------画像ホバースタイル-----------------------*/

 .img-hover img{
  border-radius: 5px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden;
  box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.15);
  margin-bottom: 15px;
  transition: 0.35s ease-out;
  -webkit-transition: 0.35s ease-out;
  -moz-transition: 0.35s ease-out;
}

/*Google Chrome, Safari, Operaのみ適用*/
@media screen and (-webkit-min-device-pixel-ratio: 0) {
   .img-hover:hover img{
    transform: translate3d(0, -10px, 0);
    -webkit-transform: translate3d(0, -10px, 0);
    box-shadow: 0 23px 40px rgba(0, 0, 0, 0.2);
  }
}



 



/*-------------------カードスタイル-----------------------*/
 
 .card{
  position:relative;
  width:100%;
  border-radius:5px;
  border:1px solid #ccc;
  height: 100%;
  background:#ffffff;
  box-shadow:0px 3px 10px 0px rgb(100,100,100,0.5);
  z-index:1;
  overflow:hidden;
}
 .card .card-contents{
  padding:15px;
}
 .card .card-contents a{
  text-decoration:none;
}
 .card .date-label{
  color:#999;
}
 .card .card-title{
  line-height:1.5;
}


/*-------------------カードスタイル-----------------------*/
 
 .card2{
  position:relative;
  width:100%;
  height: 100%;
}
 .card2 .card-contents{
  width:80%;
  top:80%;
  left:10%;
  position:absolute;
  padding:10px;
  box-shadow:0px 3px 10px 0px rgb(100,100,100,0.5);
}
 .card2 .card-contents a{
  text-decoration:none;
}
 .card2 .card-title{
  margin-bottom:10px;
}

 




/* 959px以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px){

/*-------------------コンテンツ幅-----------------------*/
.container{
  width:100%;
}

/*-------------------余白の設定-----------------------*/
.container,
.inner{
  padding-left:15px;
  padding-right:15px;
}
.row {
    margin-right: -5px;
    margin-left: -5px;
}
.m-ll{margin:calc(90px*0.9)!important;}
.mt-ll{margin-top:calc(90px*0.9)!important;}
.mb-ll{margin-bottom:calc(90px*0.9)!important;}
.ml-ll{margin-left:calc(90px*0.9)!important;}
.mr-ll{margin-right:calc(90px*0.9)!important;}
.m-l{margin:calc(60px*0.9)!important;}
.mt-l{margin-top:calc(60px*0.9)!important;}
.mb-l{margin-bottom:calc(60px*0.9)!important;}
.ml-l{margin-left:calc(60px*0.9)!important;}
.mr-l{margin-right:calc(60px*0.9)!important;}
.m-mm{margin:calc(45px*0.9)!important;}
.mt-mm{margin-top:calc(45px*0.9)!important;}
.mb-mm{margin-bottom:calc(45px*0.9)!important;}
.ml-mm{margin-left:calc(45px*0.9)!important;}
.mr-mm{margin-right:calc(45px*0.9)!important;}
.m-m{margin:calc(30px*0.9)!important;}
.mt-m{margin-top:calc(30px*0.9)!important;}
.mb-m{margin-bottom:calc(30px*0.9)!important;}
.ml-m{margin-left:calc(30px*0.9)!important;}
.mr-m{margin-right:calc(30px*0.9)!important;}
.m-s{margin:calc(15px*0.9)!important;}
.mt-s{margin-top:calc(15px*0.9)!important;}
.mb-s{margin-bottom:calc(15px*0.9)!important;}
.ml-s{margin-left:calc(15px*0.9)!important;}
.mr-s{margin-right:calc(15px*0.9)!important;}
.m-ss{margin:calc(10px*0.9)!important;}
.mt-ss{margin-top:calc(10px*0.9)!important;}
.mb-ss{margin-bottom:calc(10px*0.9)!important;}
.ml-ss{margin-left:calc(10px*0.9)!important;}
.mr-ss{margin-right:calc(10px*0.9)!important;}
/* padding */
.p-llp{padding:calc(15%*0.9)!important;}
.pt-llp{padding-top:calc(15%*0.9)!important;}
.pb-llp{padding-bottom:calc(15%*0.9)!important;}
.pl-llp{padding-left:calc(15%*0.9)!important;}
.pr-llp{padding-right:calc(15%*0.9)!important;}
.p-ll{padding:calc(90px*0.9)!important;}
.pt-ll{padding-top:calc(90px*0.9)!important;}
.pb-ll{padding-bottom:calc(90px*0.9)!important;}
.pl-ll{padding-left:calc(90px*0.9)!important;}
.pr-ll{padding-right:calc(90px*0.9)!important;}
.p-l{padding:calc(60px*0.9)!important;}
.p-lp{padding:calc(10%*0.9)!important;}
.pt-lp{padding-top:calc(10%*0.9)!important;}
.pb-lp{padding-bottom:calc(10%*0.9)!important;}
.pl-lp{padding-left:calc(10%*0.9)!important;}
.pr-lp{padding-right:calc(10%*0.9)!important;}
.pt-l{padding-top:calc(60px*0.9)!important;}
.pb-l{padding-bottom:calc(60px*0.9)!important;}
.pl-l{padding-left:calc(60px*0.9)!important;}
.pr-l{padding-right:calc(60px*0.9)!important;}
.p-mm{padding:calc(45px*0.9)!important;}
.p-mmp{padding:calc(7%*0.9)!important;}
.pt-mmp{padding-top:calc(7%*0.9)!important;}
.pb-mmp{padding-bottom:calc(7%*0.9)!important;}
.pl-mmp{padding-left:calc(7%*0.9)!important;}
.pr-mmp{padding-right:calc(7%*0.9)!important;}
.pt-mm{padding-top:calc(45px*0.9)!important;}
.pb-mm{padding-bottom:calc(45px*0.9)!important;}
.p-m{padding:calc(30px*0.9)!important;}
.p-mp{padding:calc(5%*0.9)!important;}
.pt-mp{padding-top:calc(5%*0.9)!important;}
.pb-mp{padding-bottom:calc(5%*0.9)!important;}
.pl-mp{padding-left:calc(5%*0.9)!important;}
.pr-mp{padding-right:calc(5%*0.9)!important;}
.pt-m{padding-top:calc(30px*0.9)!important;}
.pb-m{padding-bottom:calc(30px*0.9)!important;}
.pl-m{padding-left:calc(30px*0.9)!important;}
.pr-m{padding-right:calc(30px*0.9)!important;}
.p-s{padding:calc(15px*0.9)!important;}
.p-sp{padding:calc(3%*0.9)!important;}
.pt-sp{padding-top:calc(3%*0.9)!important;}
.pb-sp{padding-bottom:calc(3%*0.9)!important;}
.pl-sp{padding-left:calc(3%*0.9)!important;}
.pr-sp{padding-right:calc(3%*0.9)!important;}
.pt-s{padding-top:calc(15px*0.9)!important;}
.pb-s{padding-bottom:calc(15px*0.9)!important;}
.pl-s{padding-left:calc(15px*0.9)!important;}
.pr-s{padding-right:calc(15px*0.9)!important;}
.p-ss{padding:calc(10px*0.9)!important;}
.p-ssp{padding:calc(1%*0.9)!important;}
.pt-ssp{padding-top:calc(1%*0.9)!important;}
.pb-ssp{padding-bottom:calc(1%*0.9)!important;}
.pl-ssp{padding-left:calc(1%*0.9)!important;}
.pr-ssp{padding-right:calc(1%*0.9)!important;}
.pt-ss{padding-top:calc(10px*0.9)!important;}
.pb-ss{padding-bottom:calc(10px*0.9)!important;}
.pl-ss{padding-left:calc(10px*0.9)!important;}
.pr-ss{padding-right:calc(10px*0.9)!important;}

.archive.container,
.single.container,
.section-ll{
  padding-top:calc(90px * 0.9);
  padding-bottom:calc(90px * 0.9);
}
.section-l{
  padding-top:calc(60px * 0.9);
  padding-bottom:calc(60px * 0.9);
}
.section-mm{
  padding-top:calc(45px * 0.9);
  padding-bottom:calc(45px * 0.9);
}
.section-m{
  padding-top:calc(30px * 0.9);
  padding-bottom:calc(30px * 0.9);
}
.section-s{
  padding-top:calc(15px * 0.9);
  padding-bottom:calc(15px * 0.9);
}
.section-ss{
  padding-top:calc(10px * 0.9);
  padding-bottom:calc(10px * 0.9);
}
.btn-box{
  margin-top:calc(30px * 0.9);
}
.post-box h1{
  margin-top:calc(45px * 0.9);
  margin-bottom:calc(45px * 0.9);
}
.post-box h2{
  margin-top:calc(30px * 0.9);
  margin-bottom:calc(30px * 0.9);
}
.post-box h3{
  margin-top:calc(30px * 0.9);
  margin-bottom:calc(30px * 0.9);
}
.post-box h4{
  margin-top:calc(15px * 0.9);
  margin-bottom:calc(15px * 0.9);
}

.col-mb-m div[class*="col-"] {
  margin-bottom:calc(15px * 0.9);
}
.col-mb-s div[class*="col-"] {
  margin-bottom:calc(15px * 0.9);
}
.col-mb-ss div[class*="col-"] {
  margin-bottom:calc(10px * 0.9);
}

/*-------------------ヘッダーレイアウト-----------------------*/
    header > .container{
        margin:0;
        padding:0;
		height:60px;
      position:relative;
      max-width:100%;
    }

    .logo{
        width:60%;
        padding: 10px;
    }
    .toggle{
        width:60px;
        height:60px;
        position: absolute;
        top:0;
        right:0;
    }
    .cta-nav{
        width:60px;
        height:60px;
        position: absolute;
        top:0;
        right:60px;
    }
    .cta-nav a{
      display: flex;
      align-items: center;
      flex-direction: column;
      justify-content: center;
      color:#ffffff;
      background:#1aa7e8;
      width:60px;
      height:60px;
      line-height: 0.7;
    }
    .mobile-nav{
        position: fixed;
        top:0px;
        padding-top:80px;
        width:100%;
        height:100%;
        background:#ffffff;
        z-index: 99;
    } 

/*-------------------ヘッダー装飾スタイル１-----------------------*/
    .cta-nav a{
      color:#ffffff;
      background:#1aa7e8;
    }

/*-------------------メニューレイアウト-----------------------*/
	.menu_open{
        display: block;
    }
    .desktop-nav{
        display: none;
    }


/*-------------------メニューレイアウトの調整-----------------------*/
 

/*-------------------モバイルメニューレイアウト-----------------------*/
	.mobile-nav li a{
        padding:10px;
        text-align:center;
        display: block;
        text-decoration:none;
	} 
    /* submenuのスタイル
	----------------------------------*/
    .mobile-nav li ul.sub-menu{display:none;}
    /*--menu矢印 fontawsome--*/
    .mobile-nav li.menu-item-has-children a{
        position:relative;
    }
    .mobile-nav li.menu-item-has-children.open > a:after,
    .mobile-nav li.menu-item-has-children > a:after{ 
        position:absolute;
        top:50%;
        right:10px;
        font-family: 'Font Awesome 5 Free';

        content:'\f078';
        margin-top:-0.5em;
        font-size: 0.8em;
        font-weight: bold;
    }
    .mobile-nav li.menu-item-has-children.open > a:after{ 
        content:'\f077';
    }

/*-------------------モバイルメニュー装飾スタイル-----------------------*/
    .mobile-nav{
      background:#ffffff;
    }

/*-------------------モバイルメニューリンク装飾-----------------------*/
 .mobile-nav li a{
  color:#002259;
  display:block;
}
 .mobile-nav li a span{
  color:#222222;
}
 .mobile-nav li a:hover{
  color:#222222;
}


/*-------------------toggleスタイル-----------------------*/
 

/*-------------------ユーティリティ２-----------------------*/
.narrow{
  width:100%;
}

/*-------------------ユーティリティ5-----------------------*/
 

/*-------------------フリースタイル-----------------------*/
.frontpage-header{
	height:80vh;
	overflow:hidden;
}
.frontpage-header img{
	max-width:160%;
}


/*----------*/
}
/*----------*/


/* 幅644px以下から 
------------------------------------------------------------*/
@media only screen and (max-width: 644px){

/*-------------------余白の設定-----------------------*/
.bodyStyle .column #contentsMain,
.bodyStyle .column #contentsLeft,
.bodyStyle .column #contentsRight  {
padding:15px;
}
.m-ll{margin:calc(90px*0.7)!important;}
.mt-ll{margin-top:calc(90px*0.7)!important;}
.mb-ll{margin-bottom:calc(90px*0.7)!important;}
.ml-ll{margin-left:calc(90px*0.7)!important;}
.mr-ll{margin-right:calc(90px*0.7)!important;}
.m-l{margin:calc(60px*0.7)!important;}
.mt-l{margin-top:calc(60px*0.7)!important;}
.mb-l{margin-bottom:calc(60px*0.7)!important;}
.ml-l{margin-left:calc(60px*0.7)!important;}
.mr-l{margin-right:calc(60px*0.7)!important;}
.m-mm{margin:calc(45px*0.7)!important;}
.mt-mm{margin-top:calc(45px*0.7)!important;}
.mb-mm{margin-bottom:calc(45px*0.7)!important;}
.ml-mm{margin-left:calc(45px*0.7)!important;}
.mr-mm{margin-right:calc(45px*0.7)!important;}
.m-m{margin:calc(30px*0.7)!important;}
.mt-m{margin-top:calc(30px*0.7)!important;}
.mb-m{margin-bottom:calc(30px*0.7)!important;}
.ml-m{margin-left:calc(30px*0.7)!important;}
.mr-m{margin-right:calc(30px*0.7)!important;}
.m-s{margin:calc(15px*0.7)!important;}
.mt-s{margin-top:calc(15px*0.7)!important;}
.mb-s{margin-bottom:calc(15px*0.7)!important;}
.ml-s{margin-left:calc(15px*0.7)!important;}
.mr-s{margin-right:calc(15px*0.7)!important;}
.m-ss{margin:calc(10px*0.7)!important;}
.mt-ss{margin-top:calc(10px*0.7)!important;}
.mb-ss{margin-bottom:calc(10px*0.7)!important;}
.ml-ss{margin-left:calc(10px*0.7)!important;}
.mr-ss{margin-right:calc(10px*0.7)!important;}
/* padding */
.p-llp{padding:calc(15%*0.7)!important;}
.pt-llp{padding-top:calc(15%*0.7)!important;}
.pb-llp{padding-bottom:calc(15%*0.7)!important;}
.pl-llp{padding-left:calc(15%*0.7)!important;}
.pr-llp{padding-right:calc(15%*0.7)!important;}
.p-ll{padding:calc(90px*0.7)!important;}
.pt-ll{padding-top:calc(90px*0.7)!important;}
.pb-ll{padding-bottom:calc(90px*0.7)!important;}
.pl-ll{padding-left:calc(90px*0.7)!important;}
.pr-ll{padding-right:calc(90px*0.7)!important;}
.p-l{padding:calc(60px*0.7)!important;}
.p-lp{padding:calc(10%*0.7)!important;}
.pt-lp{padding-top:calc(10%*0.7)!important;}
.pb-lp{padding-bottom:calc(10%*0.7)!important;}
.pl-lp{padding-left:calc(10%*0.7)!important;}
.pr-lp{padding-right:calc(10%*0.7)!important;}
.pt-l{padding-top:calc(60px*0.7)!important;}
.pb-l{padding-bottom:calc(60px*0.7)!important;}
.pl-l{padding-left:calc(60px*0.7)!important;}
.pr-l{padding-right:calc(60px*0.7)!important;}
.p-mm{padding:calc(45px*0.7)!important;}
.p-mmp{padding:calc(7%*0.7)!important;}
.pt-mmp{padding-top:calc(7%*0.7)!important;}
.pb-mmp{padding-bottom:calc(7%*0.7)!important;}
.pl-mmp{padding-left:calc(7%*0.7)!important;}
.pr-mmp{padding-right:calc(7%*0.7)!important;}
.pt-mm{padding-top:calc(45px*0.7)!important;}
.pb-mm{padding-bottom:calc(45px*0.7)!important;}
.p-m{padding:calc(30px*0.7)!important;}
.p-mp{padding:calc(5%*0.7)!important;}
.pt-mp{padding-top:calc(5%*0.7)!important;}
.pb-mp{padding-bottom:calc(5%*0.7)!important;}
.pl-mp{padding-left:calc(5%*0.7)!important;}
.pr-mp{padding-right:calc(5%*0.7)!important;}
.pt-m{padding-top:calc(30px*0.7)!important;}
.pb-m{padding-bottom:calc(30px*0.7)!important;}
.pl-m{padding-left:calc(30px*0.7)!important;}
.pr-m{padding-right:calc(30px*0.7)!important;}
.p-s{padding:calc(15px*0.7)!important;}
.p-sp{padding:calc(3%*0.7)!important;}
.pt-sp{padding-top:calc(3%*0.7)!important;}
.pb-sp{padding-bottom:calc(3%*0.7)!important;}
.pl-sp{padding-left:calc(3%*0.7)!important;}
.pr-sp{padding-right:calc(3%*0.7)!important;}
.pt-s{padding-top:calc(15px*0.7)!important;}
.pb-s{padding-bottom:calc(15px*0.7)!important;}
.pl-s{padding-left:calc(15px*0.7)!important;}
.pr-s{padding-right:calc(15px*0.7)!important;}
.p-ss{padding:calc(10px*0.7)!important;}
.p-ssp{padding:calc(1%*0.7)!important;}
.pt-ssp{padding-top:calc(1%*0.7)!important;}
.pb-ssp{padding-bottom:calc(1%*0.7)!important;}
.pl-ssp{padding-left:calc(1%*0.7)!important;}
.pr-ssp{padding-right:calc(1%*0.7)!important;}
.pt-ss{padding-top:calc(10px*0.7)!important;}
.pb-ss{padding-bottom:calc(10px*0.7)!important;}
.pl-ss{padding-left:calc(10px*0.7)!important;}
.pr-ss{padding-right:calc(10px*0.7)!important;}

.archive.container,
.single.container,
.section-ll{
  padding-top:calc(90px * 0.7);
  padding-bottom:calc(90px * 0.7);
}
.section-l{
  padding-top:calc(60px * 0.7);
  padding-bottom:calc(60px * 0.7);
}
.section-mm{
  padding-top:calc(45px * 0.7);
  padding-bottom:calc(45px * 0.7);
}
.section-m{
  padding-top:calc(30px * 0.7);
  padding-bottom:calc(30px * 0.7);
}
.section-s{
  padding-top:calc(15px * 0.7);
  padding-bottom:calc(15px * 0.7);
}
.section-ss{
  padding-top:calc(10px * 0.7);
  padding-bottom:calc(10px * 0.7);
}
.btn-box{
  margin-top:calc(30px * 0.7);
}
.post-box h1{
  margin-top:calc(45px * 0.7);
  margin-bottom:calc(45px * 0.7);
}
.post-box h2{
  margin-top:calc(30px * 0.7);
  margin-bottom:calc(30px * 0.7);
}
.post-box h3{
  margin-top:calc(30px * 0.7);
  margin-bottom:calc(30px * 0.7);
}
.post-box h4{
  margin-top:calc(15px * 0.7);
  margin-bottom:calc(15px * 0.7);
}

.col-mb-m div[class*="col-"] {
  margin-bottom:calc(15px * 0.7);
}
.col-mb-s div[class*="col-"] {
  margin-bottom:calc(15px * 0.7);
}
.col-mb-ss div[class*="col-"] {
  margin-bottom:calc(10px * 0.7);
}

/*-------------------文字サイズ-----------------------*/
body{font-size:16px;}
 h1{font-size:calc(36px*0.8);}
 h2{font-size:calc(28px*0.8);}
 h3{font-size:calc(20px*0.9);}
 h4{font-size:16px;}
 .fs-ss{font-size:12px;}
 .fs-s{font-size:14px;}
 .fs-m{font-size:16px;}
 .fs-mm{font-size:calc(20px*0.9);}
 .fs-l{font-size:calc(28px*0.8);}
 .fs-ll{font-size:calc(36px*0.8);}
 .fs-3l{font-size:calc(42px*0.8);}

/*-------------------ヘッダーレイアウト-----------------------*/
header{
    background:#ffffff;
    position: fixed;
    top:0;
    width: 100%;
    z-index: 999;
    box-shadow: 5px 0px 10px 3px rgba(0,0,0,0.3);
}

/*-------------------モバイルメニューレイアウト-----------------------*/
 .mobile-nav li span{
    display:block;
    text-align:center;
    font-size:0.8em;
}

/*-------------------一覧レイアウト-----------------------*/
.archive-list li{
  width:98%;
  margin-left:1%;
  margin-right:1%;
}
.archive-list li:nth-child(2n+1) {
  margin-left:1%;
  margin-right:1%;
}

/*-------------------最近の投稿(画像無し)-----------------------*/
.recent-posts li .date{
  width:100%;
}

/*-------------------テーブルレイアウト-----------------------*/
.table-scroll{
  width:100%;
  overflow-x: scroll;
}
.table-scroll table{
  width:700px;
}

/*-------------------inputレイアウト-----------------------*/
 input[type="tel"],
 input[type="number"],
 select{
width:100%;
}

/*-------------------copyrightレイアウト-----------------------*/
#copyright .copyright-left,
#copyright .copyright-right{
  text-align:center;
}

/*-------------------コンポーネント２-----------------------*/
.hover-scale.h-30-mobile{
  padding-top: 30%;  
}
.hover-scale.h-50-mobile{
  padding-top: 50%;  
}
.hover-scale.h-75-mobile{
  padding-top: 75%;  
}
.hover-scale.h-100-mobile{
  padding-top: 100%;  
}

/*-------------------ユーティリティ２-----------------------*/
ul.column-1-mobile li{width:100%;}
ul.column-2-mobile li{width:50%;}
ul.column-3-mobile li{width:33.333%;}
ul.column-4-mobile li{width:25%;}
ul.column-5-mobile li{width:20%;}

/*-------------------ユーティリティ5-----------------------*/
 

/*-------------------ユーティリティ7-----------------------*/
.overlay-wrapper{
  position: static;
  height: auto;
}
.overlay-lb,
.overlay-lt{
  position: static;
}
.overlay-rb,
.overlay-rt{
  position:static;
}
.overlay-contents{
  position:static;
}

/*-------------------フリースタイル-----------------------*/
.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
    margin-bottom:15px;
}
.frontpage-header{
	height:600px;
	overflow:hidden;
}
.frontpage-header img{
	max-width:250%;
  	margin-left: -70%;
}
main{
  overflow-x:hidden;
}


/*----------*/
}
/*----------*/
/* 幅380px以下から 
------------------------------------------------------------*/
@media only screen and (max-width: 380px){


/*----------*/
}
/*----------*/
