@charset "UTF-8";

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video { margin: 0; padding: 0; border: 0; font: inherit; vertical-align: baseline; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {display: block; }

blockquote, q {quotes: none; }

blockquote:before, blockquote:after,q:before, q:after { content: ""; content: none; }

ins { background-color: #ff9; color: #000; text-decoration: none; }

mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold; }

del {
    text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }

table { border-collapse: collapse; border-spacing: 0; }

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0; }

input, select {
    vertical-align: middle; }

/* Font normalization inspired by YUI fonts.css: developer.yahoo.com/yui/ */
body {
    font: 13px/1.231 arial,'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;
  *font-size: small; 
    background-color: #e5eff1;
}

/* Hack retained to preserve specificity */
select, input, textarea, button {
    font: 99% sans-serif; }

/* Normalize monospace sizing */
pre, code, kbd, samp {
    font-family: monospace, sans-serif; }

/*****************************************************************
 * Base styles.
 *****************************************************************/
* {box-sizing: border-box; }

html {overflow-y: scroll; }

a:hover, a:active {outline: none; }

ul, ol {margin-left: 2em; }

ol {list-style-type: decimal; }

small {font-size: 85%; }

strong, th {font-weight: bold; }

td {vertical-align: top; }

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
}

sup {top: -0.5em; }

sub {bottom: -0.25em; }

pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
    padding: 15px;
}

img {vertical-align: top; }

/****************************
 * Grid
 ****************************/

.content {
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
    padding: 0 1em; 
    background-color: #e5eff1;

}
.content2 {
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
    padding: 1em 1em; 
    background-color: #273048;

}
.content_heder {
    margin: 0 auto;
    overflow: hidden;
    padding: 0 1em; 
    background-color: #ffffff;
    text-align: left;
    height: 96px;
}
.content_heder img{
    width: 45%;        
}

.row {
    width: auto;
    overflow: hidden;
    max-width: 1170px;
}

.grid {
    float: none;
    margin: 0;
    width: auto;
}

.mrow {margin: 0 -1em; }
.mgrid {float: left;  padding: 0 1em;  overflow: hidden; }
.mgrid-1 {width: 8.3333%; }
.mgrid-2 {width: 16.6666%; }
.mgrid-3 {width: 25%; }
.mgrid-4 {width: 33.3333%; }
.mgrid-5 {width: 41.6666%; }
.mgrid-6 {width: 50%; }
.mgrid-7 {width: 58.3333%; }
.mgrid-8 {width: 66.6666%; }
.mgrid-9 {width: 75%; }
.mgrid-10 {width: 83.3333%;}
.mgrid-11 {width: 91.6666%;}
.mgrid-12 {width: 100%;}

@media screen and (min-width: 800px) {
    .content {
    padding: 0 1.8em; } 
}

@media screen and (min-width: 960px) {
    .row {margin: 0 -1em; }
    .grid {
        float: left;
        padding: 0 1em;
        overflow: hidden;
    }
    .grid-center {
        margin-left: auto;
        margin-right: auto;
        float: none;
    }
    .grid-full {padding: 0; }
    /* for columns */
    .grid-1 { width: 8.3333%; }
    .grid-2 { width: 16.6666%; }
    .grid-3 { width: 25%; }
    .grid-4 { width: 33.3333%; }
    .grid-5 { width: 41.6666%; }
    .grid-6 { width: 50%; }
    .grid-7 { width: 58.3333%; }
    .grid-8 { width: 66.6666%; }
    .grid-9 { width: 75%; }
    .grid-10 { width: 83.3333%; }
    .grid-11 { width: 91.6666%; }
    .grid-12 { width: 100%; }
    /* push */
    .push-7 { margin-left: 58.3333%;
    }
}

@media screen and (min-width: 1240px) {
    .content, .row {
        max-width: 1240px;
    } 

    .content_heder img{
        width: 40%;    
    }
}

body { font-size: 1.2em; }

h1, h2, h3 {
    font-weight: bold;
    margin: 0.5em 0 0.8em;
}

h2, h3 {color: #fff; }

h1 {font-size: 1.6em; }

h2 {font-size: 1.4em; }

h3 {font-size: 1.3em; }

p {font-size: 1em; padding: 0 0 1em; }

img {
    max-width: 100%;
    height: auto;
    width: auto\9;
    margin-bottom: 1em;
}

/*--------------------------------
　ヘッダー
---------------------------------*/

#header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    height: auto;
}

#header .logo {
    display: block;
    margin: 3em 0 0 0;
}

#header .logo-name {
    display: block;
    font-family: 'Amatic SC', cursive;
    font-size: 32px;
    line-height: 1;
    text-align: center;
    color: #d9d9d9s;
    margin-bottom: 5px;
}

.content_heder{
    display: block;
    margin: 0 0 0 0; 
}

.content_heder img{
    border: none;
}

.logo{
    text-align: center;
}

.logo-name2 {
    display: block;
    font-family: 'Cormorant Garamond', serif;
    font-size: 25px;
    line-height: 1;
    text-align: center;
    color: #b8b74c;
    margin-bottom: 5px;
}

.logo-name2 h2{
    color: #b8b74c;
}

.logo-title {
    /* font-family: 'Cormorant Garamond', serif; */
    font-size: 54px;
    font-weight: normal;
    color: #1e5192;
    line-height: 1;
    letter-spacing: 2px;
    font-weight: bold;  
}

.logo-title2 {
    font-family: 'Cormorant Garamond', serif;
    font-size:48px;
    font-weight: normal;
    color: #b8b74c;
    line-height: 1;
    letter-spacing: .1em;
}

.subttl{
    display: block;
    color: #000;
    font-size: 36px;
    font-weight: bold;
    line-height: 1;
    margin: 64px 0 12px;
}

.logo-desc {
    font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, "MS P明朝", "MS PMincho", serif;
    display: block;
    font-size: 14px;
    letter-spacing: .2em;
    text-align: center;
    margin-top: 10px;
}

.cssgrid {
    display: flex;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    grid-auto-rows: 1fr;
    grid-gap: 0.8em; 
    padding: 0.8em;
    margin: 0 0 6em;
    text-align: center;
}

.cssgrid > div {
    overflow: auto;
    min-width: 0; 
    /* font-family: 'Cormorant Garamond', serif; */
}

.cssgrid > div img{
    margin: 0;
    padding: 0;
    border: none;
}

.cssgrid > div a,
.cssgrid > div h3{
    display: block;
    color: #000;
    text-decoration: none;
}

.cssgrid > div a:hover{
    opacity: 0.8;
}

.cssgrid > div h3{
    margin: -30px auto 0;
}

.cssgrid.center {
    justify-content: space-evenly;
}

.cssgrid.center h3{
    margin-top: 12px;
}

.cssgrid2 {
    display: flex;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    grid-auto-rows: 1fr;
    grid-gap: 0.8em;
    justify-content: space-between;
    padding: 0.8em;
    margin: 0;
}

.cssgrid2 > div {
    /* background: #000; */
    overflow: auto;
    min-width: 0;
    padding: 0.5em;text-align: center;
    /* font-family: 'Cormorant Garamond', serif; */
    width: 30%;
}

.cssgrid2 > div a,
.cssgrid2 > div h3{
    display: block;
    color: #000;
    text-align: left;
    text-decoration: none;
}

.cssgrid2 > div a:hover{
    opacity: 0.6;
}

.cssgrid2 > div img{
    margin: 0;
    padding: 0 0.5em;
    border: none;
}

/*--------------------------------
　Section
---------------------------------*/

.section .inner {
    padding: 20px 10px;
}

.section .section-title-block {
    text-align: center;
    margin-bottom: 30px;
}

.section .section-title {
    font-family: 'Cormorant Garamond', serif;
    text-transform: lowercase;
    letter-spacing: .2em;
    display: inline-block;
    font-size: 36px;
    line-height: 1;
    margin-bottom: 10px;
    color: #757575;
}

.section .section-desc {
    text-align: center;
}

@media screen and (max-width: 484px) {
    .content_heder img{
        width: 98%;    
    }
}

.copyright {
    font-size: 70%;
    color: #fff;
    text-align: center;
}

/*media Queries 767
----------------------------------------------------*/

@media screen and (max-width: 1080px) {
    body {
        font-size: 13px;
        line-height: 1.7;
    }

    .content_heder h1 object{
        width: 100%;
    }
    
    #header {
        height: 30vh;
        width: 100%
    }
    #header .logo {
    display: block;
        margin: 1em 0 0 0;
    }
    /* #header .logo-title {
        font-size: 40px;
    } */

    #header .logo-name {
        font-size: 16px;
    }

    #header .logo-desc {
        font-size: 10px;
    }

    #contents {
        padding: 40px 0;
    }

    .section .inner {
        padding: 30px 15px;
    }

    .section .section-title-block {
        margin-bottom: 10px;
    }

    .section .section-title {
        font-size: 32px;
    }
    .cssgrid {
        display: block;
    }

    .cssgrid2 {
        display: block;
    }

    .cssgrid2 > div {
        width: 100%;
    }
}

.pochitto_btn_blue {
	display: inline-block;
	width: 380px;
	padding: 0.8em;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background:#005691;
	border-bottom:4px solid #0C88CA;
	border-radius: 4px;
	transition: .0s;
}
.pochitto_btn_blue:hover {
    cursor: pointer;
    text-decoration: none;
    background:#005691;
    transform: translate3d(0, 4px, 0);
    transition: .0s;
    border-bottom: none;
}

.reternbun{
    width: 100%;
    background-color: #000;
    margin: 0 auto;
    padding: 0 1em;
    
    
}
.reternbun img{
    width: 30%;
    float: right;
    border:1px #fff solid;
}

@media screen and (max-width: 1080px) {
    .reternbun img{
        width: 100%;
    }
}

/* 2022.01.20 追記  */
.cssgrid2 > div.wider_sizing{width: 44%;}
@media screen and (max-width: 1080px) {
    .cssgrid2 > div.wider_sizing{width: 100%;}
}
