@charset "UTF-8";
/* CSS Document */
body {
	position: relative;
	font-feature-settings: "palt";
    background-image: url(../images/back_teachme.webp);
    background-position: center top;
    background-repeat: repeat-y;
    background-size: 100% auto;
    height: 100%;
    width: 100%;
}
main {
  min-height: calc(100vh - 130px);
}
h1  {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 32px;
}
h2  {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-style: normal;
    font-weight: 300;
    font-size: 32px;
    letter-spacing: 0.1em;
}
h3  {
	font-family: "kaisei-decol", sans-serif;
    font-style: normal;
    font-weight: 300;
    font-size: 26px;
    letter-spacing: 0.1em;
}
h4  {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-style: normal;
    font-weight: 300;
    font-size: 16px;
	line-height: 26px;
    letter-spacing: 0.05em;
	text-align: center;
}
h5  {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 12px;
	line-height: 12px;
    letter-spacing: 0.125em;
}
h6  {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 10px;
	line-height: 15px;
    letter-spacing: 0.05em;
}

.blue {
    color: #196AC9;	
}
.white {
    color: #FFFFFF;	
}
.darkgray {
    color: #777777;	
}
.yellow {
    color: #fff100;	
}
.gray {
    color: #999999;	
}
.navy {
    color: #004098;	
}
.glassgreen {
    color: #4da635;
}

.container_top	{
    background-image: url(../images/image_toppage.webp);
    background-position: center center;
    background-size: cover;
    width: 100vw;
    height: 100dvh;
    display: flex;
	justify-content:center;
	align-items: center;
	flex-direction: column;
}
.silhouette_top {
    mix-blend-mode: multiply;
    opacity: 0.75;
    position: absolute;	
    width: 100vw;
	height: 100dvh;
}
.designarea_top {
	display: flex;
	justify-content:center;
	align-items: center;
	flex-direction: column;
}
.designarea {
	width: 700px;
	margin-top: 35px;
	margin-bottom: 35px;
	display: flex;
	justify-content:center;
	align-items: center;
	flex-direction: column;
}

.logo_top {
    width: 420px;
    margin-top: 55px;
    z-index: 100;
}
.title_top {
    width: 700px;
    z-index: 100;
    position: absolute;
    top: 35px;
}
.icon_scroll {
    width: 100px;
    height: 100px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 30px;
    background-image: url(../images/icon_scroll_pc.svg);
	z-index: 101;
}
.sponsor {
    color: #FFFFFF;
    line-height: 12px;
    letter-spacing: 0.05em;
    text-align: center;
    z-index: 102;
    top: calc(100vh - 30px);
    position: absolute;
}

/*ナビゲーション*/
.menu {
    width: 40px;
    height: 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: fixed;
    right: 20px;
    top: 20px;
    z-index: 999;
    background-image: url(../images/mark_menuopen.svg);
    background-position: center center;
    background-repeat: no-repeat;
	cursor: pointer;
}
.menu.is-active {
    background-image: url(../images/mark_menuclose.svg);
}
.navi_back {
    flex-direction: column;
	align-items: center;
    position: fixed;
    top: 0px;
    right: -350px;
    height: 100vh;
    width: 350px;
    background-color: #004098;
    mix-blend-mode: multiply;
	opacity: 0.9;
	z-index: 888;
}
.navi_back.is-active {
    right: -100px;
	transition: 0.5s;
}
.navi_text {
	width: 350px;
    height: 100vh;
    display: flex;
    flex-direction: column;
	justify-content: center;
	align-items: start;
    color: #FFFFFF;
    position: fixed;
    top: 0px;
    right: -350px;
    z-index: 888;
}
.navi_text a {
    font-size: 16px;
    text-decoration: none;
	width: 350px;
    height: 50px;
    color: #FFFFFF;
    line-height: 50px;
	padding-left: 20px;
}
.navi_text.is-active {
    right: -100px;
	transition: 0.5s;
}
.navi_text a:hover {
	background-color: #196AC9;
	padding-left: 30px;
	font-weight: 700;
	transition: 0.25s;
}
.top {
    width: 40px;
    height: 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 999;
    background-image: url(../images/mark_top.svg);
    background-position: center center;
    background-repeat: no-repeat;
	cursor: pointer;
}
/*ここまでナビゲーション*/


/*教えて座迎夢ちゃん*/
.container_intro {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.contentsarea {
    width: 100vw;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
	margin-bottom: 20px;
    position: relative;
}

.designarea {
	width: 700px;
	display: flex;
	justify-content:center;
	align-items: center;
	flex-direction: column;
	margin-top: 0px;
}

.title_teachme {
    width: 308px;
    margin-top: 55px;
	margin-bottom: 45px;
}
.title_teachmeend {
    width: 192px;
    margin-top: 36px;
}

.zageimu-chang_reverse {
    width: 160px;
	transform: scale(1, -1);
}

.wordarea {
	display: flex;
	justify-content:flex-start;
	align-items: center;
	flex-direction: column;
	margin-bottom: 30px;
}


.word {
	font-size: 26px;
	lineheight: 26px;
	text-align: center; 
}
.yomikata {
	font-size: 12px;
	lineheight: 12px;
	margin-top: 10px;
	margin-bottom: 15px;
	text-align: center; 
}

.map {
	width: 550px;
	margin-top: 15px;
	margin-bottom: 15px;
}

.photo_yoko {
	width: 300px;
	margin-top: 15px;
	margin-bottom: 15px;
}

.photo_tate {
	height: 300px;
	margin-top: 15px;
	margin-bottom: 15px;
}
.photo_fukusuu {
	width: 480px;
	margin-top: 15px;
	margin-bottom: 15px;
	display: flex;
	justify-content:flex-start;
	align-items: center;
	flex-wrap: wrap;
}
.photo_mashikaku {
	width: 150px;
	margin: 5px
}


/*ここまで教えて座迎夢ちゃん*/



/*クリ・コモ*/
.container_darkgray	{
	background-color: #555555;
	display: flex;
	justify-content:center;
	align-items: center;
	flex-direction: column;
}
.designarea-t {
	width: 100vw;
	margin-top: 10px;
	margin-bottom: 10px;
	display: flex;
	justify-content:center;
	align-items: center;
	flex-direction: row;
}
.ccmark {
    height: 28px;
    margin-right: 10px;
}
.creativecommons {
	font-size: 12px;
	font-weight: 100;
    line-height: 15px;
	text-align: left;
    letter-spacing: 0.05em;
}
/*ここまでクリ・コモ*/

.text-link {
	color: #FFFFFF;
}
.notes {
	width: 700px;
	font-size: 12.5px;
    line-height: 18px;
	font-weight: 700;
    letter-spacing: 0.03em;
	margin-top: 5px;
}
.notes-c {
	font-size: 12.5px;
    line-height: 18px;
	font-weight: 700;
    letter-spacing: 0.03em;
	margin-top: 5px;
	text-align: center; 
}
.warichu {
    font-size: 80%;
    vertical-align: top;
    letter-spacing: -0.05em;
}

.footer_short_page {
	width: 100vw;
    position: fixed;
    bottom: 0px;
}

.copyright {
	width: 100vw;
	background-color: #000000;
	font-weight: 100;
    line-height: 60px;
	text-align: center;
    letter-spacing: 0.05em;
	padding-bottom: 20px;
}


/*ボトムロゴ*/
.logo_bottom {
	width: 100vw;
	height: 110px;
	display: flex;
	justify-content:center;
	align-items: center;
	flex-direction: column;
	margin-top: 30px;
	margin-bottom: 20px;
	position:relative;
}

.logo_pbc4i {
	width: 250px;
	margin-top: -5px;
}

/*ここまでボトムロゴ*/





/* for Smart Phone */
@media screen and (max-width:599px){

h4  {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 12px;
	line-height: 21px;
    letter-spacing: 0.05em;
}
h5  {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 9px;
	line-height: 12px;
    letter-spacing: 0.125em;
}
h6  {
    font-family: fot-tsukuardgothic-std, sans-serif;
    font-style: normal;
    font-weight: 700;
    font-size: 8px;
	line-height: 15px;
    letter-spacing: 0.05em;
}

.container_top	{
    background-image: url(../images/image_toppage.webp);
}
.silhouette_top {
    mix-blend-mode: multiply;
    opacity: 0.75;
    position: absolute;	
    width: 100vw;
	height: 100dvh;
}

.designarea {
	width: 345px;
	margin-bottom: 20px;
}


.title_top {
    width: 420px;
    top: 25px;
}
.icon_scroll {
    width: 100px;
    height: 100px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: 30px;
    background-image: url(../images/icon_scroll_sp.svg);
	z-index: 101;
}
.sponsor {
    line-height: 12px;
    letter-spacing: 0.05em;
    text-align: center;
    z-index: 102;
    top: calc(100vh - 30px);
    position: absolute;
}
	
/*教えて座迎夢ちゃん*/
.container_intro {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.contentsarea {
    width: 100vw;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
	margin-bottom: 20px;
    position: relative;
}

.designarea {
	width: 345px;
	display: flex;
	justify-content:center;
	align-items: center;
	flex-direction: column;
	margin-top: 0px;
}

.title_teachme {
    width: 308px;
    margin-top: 55px;
	margin-bottom: 45px;
}
.title_teachmeend {
    width: 192px;
    margin-top: 10px;
}

.zageimu-chang_reverse {
    width: 160px;
	transform: scale(1, -1);
}

.wordarea {
	display: flex;
	justify-content:flex-start;
	align-items: center;
	flex-direction: column;
	margin-bottom: 30px;
}


.word {
	font-size: 22px;
	lineheight: 26px;
}
.yomikata {
	font-size: 10px;
	lineheight: 12px;
	margin-top: 10px;
	margin-bottom: 15px;
}
.map {
	width: 345px;
	margin-top: 15px;
	margin-bottom: 15px;
}

.photo_yoko {
	width: 240px;
	margin-top: 15px;
	margin-bottom: 15px;
}

.photo_tate {
	height: 240px;
	margin-top: 15px;
	margin-bottom: 15px;
}
.photo_fukusuu {
	width: 320px;
	margin-top: 15px;
	margin-bottom: 0px;
	display: flex;
	justify-content:flex-start;
	align-items: center;
	flex-wrap: wrap;
}
.photo_mashikaku {
	width: 150px;
	margin: 5px
}


/*ここまで教えて座迎夢ちゃん*/


/*クリ・コモ*/
.container_darkgray	{
	background-color: #555555;
	display: flex;
	justify-content:center;
	align-items: center;
	flex-direction: column;
}
.designarea-t {
	width: 100vw;
	margin-top: 10px;
	margin-bottom: 10px;
	display: flex;
	justify-content:center;
	align-items: center;
	flex-direction: row;
}
/*ここまでクリ・コモ*/
