@charset "utf-8";
* {
	margin: 0px;
	padding: 0px;
}
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
a {
	text-decoration: none;
}
img {
	width:100%;
	vertical-align:bottom;
	border:none;
}
table {
	border-collapse: collapse;
}
.clearfix:after {
	content: ".";  /* 新しい要素を作る */
	display: block;  /* ブロックレベル要素に */
	clear: both;
	height: 0;
	visibility: hidden;
}
.clearfix {
	min-height: 1px;
}
* html .clearfix {
	height: 1px;/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"] {
	-webkit-appearance: none;
}
body {
	font-family: Verdana, "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif;
}
main {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
	right: 0;
	overflow: hidden;
}
.rela {
	position: relative;
}
.abso {
	position: absolute;
}
.p_center {
	left:0;
	right:0;
	margin:0 auto;
}
img#icon01 {
	width: 100%;
	top: 18.5%;
	left: 0;
}
img#icon02 {
	width: 33.1%;
	top: 75%;
	right: 0.5%;
}
img#icon03 {
	width: 33.5%;
	top: 75.5%;
	left: 1%;
}
img.btn {
	top: 33%;
	animation: 2.1s fuwafuwa ease-in-out infinite;
}
img#body01_icon01 {
	width: 69%;
	top: 17%;
	left: 18%;
}
img#body04_icon01 {
	width: 77%;
	top: 20%;
	left: -4%;
}
img#body04_icon02 {
	width: 77%;
	bottom:  -0.6%;
	right: -7.6%;
}
footer {
	background-color: #0995a2;
	padding: 9%;
	color: #ffffff;
	text-align: center;
	font-size: min(3.2vw, 29px);
}
/* アニメーション */

.start_0 {
	opacity: 0;
}
.fill {
	animation-fill-mode:forwards;
}
.icount_1 {
	animation-iteration-count: 1;
}
img.text_subetemuryo01 {
	animation-name:fadeUpAnime;
	animation-duration:0.8s;
	animation-delay:0.3s;
}
img.text_subetemuryo02 {
	animation: bounceIn 0.8s cubic-bezier(0.25, 1, 0.5, 1) forwards 2.1s, moveUpDown 1.7s ease-in-out 2.8s infinite alternate;
}
img.text_subetemuryo03 {
	animation: bounceIn 0.8s cubic-bezier(0.25, 1, 0.5, 1) forwards 1.3s, moveUpDown 1.7s ease-in-out 2.4s infinite alternate;
}
img.text_subetemuryo04 {
	animation: zoomout 0.8s linear;
}
img.text_subetemuryo05 {
	animation-name:fadeDownAnime;
	animation-duration:0.8s;
	animation-delay: 0.8s;
}
img.text_subetemuryo06 {
	animation-name:fadeDownAnime;
	animation-duration:0.8s;
	animation-delay: 1.0s;
}
 @keyframes fadeUpAnime {
 0% {
 transform: scale(0.8, 1.4) translate(0%, -100%);
}
10% {
 transform: scale(0.8, 1.4) translate(0%, -15%);
}
20% {
 transform: scale(1.8, 1.4) translate(0%, 30%);
}
30% {
 transform: scale(0.9, 1.1) translate(0%, -10%);
}
40% {
 transform: scale(0.95, 1.2) translate(0%, -30%);
}
50% {
 transform: scale(0.94, 1.2) translate(0%, -10%);
}
60% {
 transform: scale(1.2, 1.0) translate(0%, 5%);
}
70% {
 transform: scale(1.1, 1.0) translate(0%, 0%);
}
100% {
 transform: scale(1.0, 1.0) translate(0%, 0%);
}
}
@keyframes bounceIn {
 0% {
 transform:scale3d(.3, .3, .3)
}
20% {
 transform:scale3d(1.1, 1.1, 1.1)
}
 40% {
 transform:scale3d(.9, .9, .9)
}
60% {
 opacity:1;
 transform:scale3d(1.03, 1.03, 1.03)
}
80% {
 transform:scale3d(.97, .97, .97)
}
100% {
 opacity:1;
 transform:scale3d(1, 1, 1)
}
}

@keyframes zoomout {
 0% {
transform: scale(1.0, 1.0) translate(0%, 0%);
}
 10% {
transform: scale(1.1, 0.9) translate(0%, 5%);
}
 40% {
transform: scale(1.2, 0.8) translate(0%, 15%);
}
 50% {
transform: scale(1.0, 1.0) translate(0%, 0%);
}
 60% {
transform: scale(0.9, 1.2) translate(0%, -100%);
}
 75% {
transform: scale(0.9, 1.2) translate(0%, -20%);
}
 85% {
transform: scale(1.2, 0.8) translate(0%, 15%);
}
 100% {
transform: scale(1.0, 1.0) translate(0%, 0%);
}
}
 @keyframes fadeDownAnime {
 from {
 opacity: 0;
 transform: translateY(-50px);
}
to {
	opacity: 1;
	transform: translateY(0);
}
}

/* ボタンアニメーション */
@keyframes fuwafuwa {
 0%, 100% {
 transform: translateY(5px) scale(0.96);
}
 50% {
 transform: translateY(-5px) scale(1.0);
}
}
 
a {
	text-decoration: none;
}
img {
	vertical-align:bottom;
	border:none;
	width:100%;
}
table {
	border-collapse: collapse;
}
.clearfix:after {
	content: ".";  /* 新しい要素を作る */
	display: block;  /* ブロックレベル要素に */
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
  	height: 1px;
  	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}
body {
	font-family: Verdana, "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif;
}
.main {
	max-width:900px;
	widht:100%;
	margin:0 auto;
}
.rela {
	position:relative;
}
.abso {
	position:absolute;
}
.p_center {
	left:0;
	right:0;
	margin:0 auto;
}
img.header_text01 {
	top:0;
	z-index:15;
	
}
img.header_icon01 {
	max-width:370px;
	width:41.1%;
	left:0;
	top:39%;
	z-index:5;
}
img.header_icon02 {
	max-width:390px;
	width:43.3%;
	right:0;
	top:38%;
	z-index:6;
}
img.header_icon03 {
	max-width:430px;
	width:47.7%;
	left:0;
	bottom:0%;
	z-index:10;
}
img.header_icon04 {
	max-width:530px;
	width:58.8%;
	right:0;
	bottom:0%;
	z-index:11;
}
img.btn {
	bottom:10%;
	animation: 2.1s fuwafuwa ease-in-out infinite;
}

img#body02_box01 {
	top:9.5%;
}
img#body02_box02 {
	top:40%;
}
img#body02_box03 {
	bottom:3.5%;
}
footer {
	text-align:center;
	padding:5% 0 10%;
	font-size:min(3vw, 27px);
	font-weight:bold;
	background:#0995a2;
}


@keyframes big {
 0% {transform:scale(0); transform:rotate(0); opacity: 0;}
 50% {transform:scale(3.2); transform:rotate(360deg); opacity: 0;}
 100% {transform: scale(1); transform:rotate(720deg); opacity: 1;}
}
@keyframes yryr {
0% {transform: translateY(0); }
20% {transform: translateY(-30px) ; }
25% {transform: translateY(0); }
30% {transform: translateY(-15px); }
50% {transform: translateY(0); }
}
@keyframes poyon {
 0% {transform: scale(1.0, 1.0) translate(0%, 0%);}
 50% {transform: scale(0.9, 0.9) translate(0%, -5%);}
 100% {transform: scale(1.0, 1.0) translate(0%, 0%);}
}
@keyframes fuwafuwa {
  0%, 100% {
    transform: translateY(5px) scale(0.96);
  }
  50% {
    transform: translateY(-5px) scale(1.0);
  }
}

:root{
    /*----------------
    defaults
    ----------------*/
    --main_color: #48ffb4;/*ãƒšãƒ¼ã‚¸ã®ãƒ¡ã‚¤ãƒ³ã‚«ãƒ©ãƒ¼*/
    --font_size: 1.6rem;/*bodyå†…ã®ãƒ•ã‚©ãƒ³ãƒˆã‚µã‚¤ã‚º*/

    /* body_background_color */
    --guidelines_background_color: #f2f2f2; /*å…¨ä½“ã®èƒŒæ™¯è‰²*/


    /*---------------- 
    header
    ----------------*/
    --header_background_color: var(--main_color);

    /* guidelines_title */
    --guidelines_title_font_size: 2.5rem;
    --guidelines_title_color: #fff;


    /*----------------
    contents
    ----------------*/
    /* guidelines_contents */
    --guidelines_contents_font_size: var(--font_size);
    --guidelines_contents_font_size_sp: 1.4rem;/*ã‚³ãƒ³ãƒ†ãƒ³ãƒ„éƒ¨åˆ†(600pxä»¥ä¸‹)ã®ãƒ•ã‚©ãƒ³ãƒˆã‚µã‚¤ã‚º*/
    --guidelines_contents_background_color: #fff;/*--guidelines_background_color(è¦ªè¦ç´ )ã®è‰²ã‚’ç¶™æ‰¿ã—ãŸã„å ´åˆã¯"inherit"ã‚’è¨­å®š*/
    --guidelines_contents_border: 0px solid var(--main_color);/*ãƒœãƒ¼ãƒ€ãƒ¼è¨­å®š*/
    --guidelines_contents_bordor_radius: 0px;/*è§’ä¸¸è¨­å®š*/


    /* guidelines_subtitle */
    --guidelines_subtitle_font_size: 1.15em;
    --guidelines_subtitle_color: var(--main_color);

    /* guidelines_back_btn */
    --guidelines_back_btn_font_size: 1.25em;
    --guidelines_back_btn_background_color: var(--main_color);
    --guidelines_back_btn_color: #fff;
    --guidelines_back_btn_border: 0px solid var(--main_color);/*ãƒœãƒ¼ãƒ€ãƒ¼è¨­å®š*/
    --guidelines_back_btn_border_radius: 20px;/*è§’ä¸¸è¨­å®š*/


    /*----------------
    footer
    ----------------*/
    --footer_background_color: var(--main_color);/*ãƒ•ãƒƒã‚¿ãƒ¼éƒ¨åˆ†ã®èƒŒæ™¯è‰²*/

    --footer_font_size_sp: 1.2rem;/*ã‚³ãƒ³ãƒ†ãƒ³ãƒ„éƒ¨åˆ†(600pxä»¥ä¸‹)ã®ãƒ•ã‚©ãƒ³ãƒˆã‚µã‚¤ã‚º*/
    --footer_color: #fff;
}


/*====================================================
resets
====================================================*/
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

html {
	overflow: auto;         
    font-size: 62.5%;
}

body {
    overflow:hidden;
	font-size:var(--font_size);
    line-height:1.5;
	font-family: ãƒ¡ã‚¤ãƒªã‚ª, Meiryo, 'Hiragino Kaku Gothic Pro', 'ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro W3', 'ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯', Arial, Verdana, sans-serif;
	color:#333;
    text-align: justify;
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote,th,td{margin:0;padding:0;}

h1,h2,h3,h4,h5 {
    font-size: 100%;
}

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


/*====================================================
constant_class
====================================================*/
.contents {
    width: 900px;
    margin: 0 auto;
}
.c {
	text-align:center!important;
}
.bold{
    font-weight: bold;
}
.padding_b5p{
    padding-bottom: 5%;
}
.cp {
    font-family: Verdana, "Droid Sans", "ãƒ¡ã‚¤ãƒªã‚ª", sans-serif;
}

/*====================================================
layouts
====================================================*/
/****** header ******/
.guidelines_header{
    background-color: #0995a2;
}

.guidelines_title {
    padding: 2rem;
    font-size: var(--guidelines_title_font_size);
    color: var(--guidelines_title_color);
}

/****** main ******/
.guidelines_background_color{
    background-color: var(--guidelines_background_color);
}

.guidelines_wrap {
    width: 95%;
    margin-left: auto;
    margin-right: auto;
    padding: 5% 0;
}

.guidelines_contents {
    margin:0 auto;
    padding: 4%;
    font-size: var(--guidelines_contents_font_size);
    background-color: var(--guidelines_contents_background_color);
    border-radius: var(--guidelines_contents_bordor_radius);
    border: var(--guidelines_contents_border);
}
.guidelines_contents__border{
    border: var(--main_color) solid 4px;
    border-radius: 10px;
}

/* if data-flex-row="true" */
[data-flex-row="true"] .guidelines_item{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

[data-flex-row="true"] .guidelines_item .guidelines_subtitle{
    flex: 0.5;
    margin-right: 10px;
}

[data-flex-row="true"] .guidelines_item .guidelines_text{
    flex: 1;
}

.guidelines_item:not(:last-child) {
    margin-bottom: 2rem;
}

.guidelines_subtitle {
    font-size: var(--guidelines_subtitle_font_size);
    color: #0995a2;
}

.guidelines_back_btn {
    display: inline-block;
    padding: 15px 30px;
    border-radius: var(--guidelines_back_btn_border_radius);
    border: var(--guidelines_back_btn_border);
    background-color: #0995a2;
    font-size: var(--guidelines_back_btn_font_size);
    color: var(--guidelines_back_btn_color);
    font-weight: bold;
}


/******* footer *******/
.guidelines_footer{
    padding: 10px 0;
    background-color: #0995a2;
    color: var(--footer_color);
}


@media screen and (max-width: 900px) {
/*====================================================
constant_class
====================================================*/
.contents {
    width: 100%;
}

}



@media screen and (max-width: 600px) {
/*====================================================
layouts
====================================================*/
/****** header ******/
.guidelines_title {
    padding: 4%;
}

/****** main ******/
.guidelines_contents {
    font-size: var(--guidelines_contents_font_size_sp);
}

/******* footer *******/
.guidelines_footer{
    font-size: var(--footer_font_size_sp);
}