@charset "UTF-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@300;400;700&display=swap');
/* Reset */

ul,ol { list-style: none; }
img {
	border: 0;
}

* { margin:0; padding:0; border:0; }

html {margin:0;padding:0;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;}

body{
	line-height:1.6;
	text-align:left;
	font-family: "M PLUS Rounded 1c", 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	margin:0px;
	padding:0px;
	color:#666;
	font-size:16px;
    background-color: #d3ebea;
    font-weight: 400;
    font-feature-settings: "palt";
}

a img {
	border:none;
}

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


.t8{font-size:8px;}
.t10{font-size:10px;}
.t11{font-size:11px;}
.t12{font-size:12px;}
.t13{font-size:13px;}
.t14{font-size:14px;}
.t15{font-size:15px;}
.t16{font-size:16px;}
.t18{font-size:18px;}
.t20{font-size:20px;}
.t21{font-size:21px;}
.t24{font-size:24px;}
.t28{font-size:28px;}
.t30{font-size:30px;}
.t32{font-size:32px;}
.t36{font-size:36px;}
.t40{font-size:40px;}
.t48{font-size:48px;}
.t60{font-size:60px;}
.t100{font-size:100px;}

.alpha a:hover img {
  opacity: 0.5;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
  transition: all 0.3s;
}

.clearboth { padding: 0; clear:both; }

.float-left{float:left;}
.float-right{float:right;}

.center{text-align: center;}

.nw{
	display: inline-block;
}

a.page-link{
   display: block;
   margin-top:-30px;
   padding-top:30px;
}

h1, h2, h3, h4 ,h5{font-weight: 400;}

/*==========================================================*/

.wrap-hidden{
	overflow: hidden;
}

.container{
	margin:0 auto;
	max-width:1060px;
	padding: 0 30px;
}


@media screen and (min-width: 901px) {.sp{display:none;}}
@media screen and (max-width: 900px) {.pc{display:none;}}


p{
	text-align: justify;
	text-justify: inter-ideograph;
	margin: 8px 0px;
}


.serif{font-family: "Noto serif JP";}

.list-disc{list-style-type: disc;padding: 0 0 0 20px;}
.list-disc li{margin-bottom: 10px;}

.accent-color1{color: #e84729;}


/*==========================================================*/



/* ヘッダー＆ハンバーガー ---------------- */

.inner {
    margin: 0 auto;
}
.inner:after {
    content: "";
    clear: both;
    display: block;
}
 
/* header */

.header-logo{
	float: left;
	margin-right: 20px;
}

.header-logo img{
    width: 25px;
    margin-right: 10px;
    opacity: 0.7;
}

.header-logo img.logo-hpma{
    width: 190px;
    opacity: 1.0;
}

.header-title{
	font-size: 13px;
	float: left;
	color: #666;
	font-weight: bold;
	padding-top: 7px;
}

#top-head {
    top: -100px;
    position: absolute;
    width: calc(100% - 40px);
    margin: 100px auto 0;
    padding: 20px;
    line-height: 1;
    z-index: 999;
	font-size: 14px;
	background-color: #fff;
	height: 30px;
}
#top-head a,
#top-head {
    text-decoration: none;
}
#top-head .inner {
    position: relative;
}
#top-head .logo {
    float: left;
}
#global-nav ul {
    list-style: none;
    position: absolute;
    right: 0px;
    bottom: 0;
    font-size: 13px;
}
#global-nav ul li {
    float: left;
}
#global-nav ul li a {
    padding: 1px 6px;
    background-color: #808080;
    color: #fff;
    margin: 0 2px;
}

#global-nav ul li a:hover {
    background-color: #9F9F9F;
}
 
/* Fixed */
#top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 10px;
    height: 30px;
    background: #f4efe7;
    background: rgba(255,255,255,0.90);
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
}
#top-head.fixed .logo {
   
}
#top-head.fixed #global-nav ul li a {
    color: #fff;
    padding: 0 8px;
}
 
/* Toggle Button */
#nav-toggle {
    display: none;
    position: absolute;
    right: 12px;
    top: 14px;
    width: 34px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #828282;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 11px;
}
#nav-toggle span:nth-child(3) {
    top: 22px;
}

@media screen and (max-width: 900px) {
	.header-title{padding-top: 0px;font-size: 12px;}
    .header-logo img{
    width: 22px;
    margin-right: 6px;
}
    .header-logo img.logo-hpma{
    width: 190px;
}
    #top-head,
    .inner {
        width: 100%;
        padding: 0;
    }
    #top-head {
        top: 0;
        position: fixed;
        margin-top: 0;
    }
    /* Fixed reset */
    #top-head.fixed {
        padding-top: 0;
        background: transparent;
    }
    #mobile-head {
        background: rgba(255,255,255,0.90);
        width: 100%;
        height: 56px;
        z-index: 999;
        position: relative;
    }
    #top-head.fixed .logo,
    #top-head .logo {
        position: absolute;
        left: 13px;
        top: 13px;
        color: #333;
        font-size: 26px;
    }
    #global-nav {
        position: absolute;
        /* 開いてないときは画面外に配置 */
        top: -500px;
        background: #333;
        width: 100%;
        text-align: center;
        padding: 10px 0;
        -webkit-transition: .5s ease-in-out;
        -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
    }
    #global-nav ul {
        list-style: none;
        position: static;
        right: 0;
        bottom: 0;
        font-size: 13px;
    }
    #global-nav ul li {
        float: none;
        position: static;
    }
    #top-head #global-nav ul li a,
    #top-head.fixed #global-nav ul li a {
        width: 100%;
        display: block;
        color: #fff;
        padding: 18px 0;
    }
    #nav-toggle {
        display: block;
    }
    /* #nav-toggle 切り替えアニメーション */
    .open #nav-toggle span:nth-child(1) {
        top: 11px;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg);
    }
    .open #nav-toggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }
    .open #nav-toggle span:nth-child(3) {
        top: 11px;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
    }
    /* #global-nav スライドアニメーション */
    .open #global-nav {
        /* #global-nav top + #mobile-head height */
        -moz-transform: translateY(556px);
        -webkit-transform: translateY(556px);
        transform: translateY(556px);
    }
}

/* end ハンバーガーメニュー */


.c-orange{color: #e84729;}
.c-purple{color: #bf4d96;}

#top .top-main,
#top .top-main-sp{
    margin: 60px auto 0 auto;;
    line-height: 0;
    width: 100%;
    position: relative;
}

#top .top-main img.main-img1{
    max-width: 750px;
    width: 50%;
}

#top .top-main .main-img2{
    padding: 30px 0 70px 0;
    text-align: center;
}

#top .top-main .main-img2 img{
    max-width: 920px;
    width: 70%;
}

#top .top-main img.main-img3{
    max-width: 75px;
    width: 6%;
    position: absolute;
    right: 30px;
    top: 50px;  

}

#top .top-main .main-img4{
    padding: 0px 0;
    text-align: right;
}

#top .top-main .main-img4 img{
    max-width: 650px;
    width: 55%;
    margin-bottom: 40px;
}

#top .top-main-sp{
    text-align: center;
}

#top .top-main-sp img{
    width: 94%;
}

.go-entry{
    font-size: 21px;
    border: 1px solid #e84729;
    border-radius: 14px;
    padding: 16px 34px;
    background-color: #fcede4;
    color: #e84729;
    line-height: 1.2;
    margin: 30px auto;
    position: relative;
    max-width: 1100px;
    width: calc(92% - 30px);
}

.go-entry b{
    font-size: 60px;
    font-weight: normal;
}

.go-entry .caution{
    font-size: 17px;
    color: #666;
}

.go-entry .button{
    background-color: #a3ccc9;
    border-radius: 10px;
    width: 320px;
    color: #333;
    font-size: 18px;
    text-align: center;
    padding: 10px;
    line-height: 1;
    margin: 10px auto;
    position: relative;
    transition: all 0.3s;
}

.go-entry .button:hover{
    background-color: #C4E8E5;
    transition: all 0.3s;
}

.go-entry .button img.star1{
    width: 14px;
    position: absolute;
    right: 8px;
    top: 5px; 
}

.go-entry .button img.star2{
    width: 14px;
    position: absolute;
    left: 8px;
    bottom: 5px; 
}

@media screen and (min-width: 901px) {
    .go-entry .button{position: absolute;right: 22px;bottom: 34px; }
}

@media screen and (max-width: 900px) {
    .go-entry{text-align: center;}.go-entry{font-size: 16px;padding: 15px;}
}

@media screen and (max-width: 960px) {
    .go-entry .button{width:90%; max-width: 320px;}
    .go-entry b{font-size: 36px;}
    .go-entry .caution{font-size: 14px;}
    
}

#top .lead-txt{
    padding: 30px 5% 30px 5%;
    line-height: 1.2;
    font-size: 24px;
    margin: 0 auto;
    max-width: 1160px;
    color: #e84729;
    text-align: center;
}

#top .lead-txt .tit{
    font-size: 36px;
    font-weight: 500;
}


#top .kaiki{
	padding: 20px 0;
    margin-bottom: 20px;
    font-size: 16px;
}

#top .kaiki h2{
	font-size: 18px;
    color: #e84729;
}

#top .kaiki .white-waku{
    border-radius: 19px;
    background-color: #fff;
    padding: 30px 10px;
    text-align: center;
    max-width: 480px;
    line-height: 1.2;
    margin: 10px auto;
}
#top .kaiki .white-waku ul{
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}

#top .kaiki .white-waku li{
    font-size: 14px;
    width: 184px;
    padding: 10px;
}

#top .kaiki .white-waku img{
    margin: 10px auto;
    box-shadow: 3px 5px 10px rgba(0,0,0,0.1);
}

#top .kaiki .left{padding-right: 10px; color: #bf4d96; margin-bottom: 40px;}
#top .kaiki .right{padding-right: 10px;}

#top .kaiki .left a{ color: #bf4d96;}
#top .kaiki .left a:hover{ color: #D184B5;}

@media screen and (min-width: 901px) {
    #top .kaiki .left{width: 40%; float: left;}
    #top .kaiki .right{width:50%; float: right;}
}

@media screen and (max-width: 900px) {
	#top .kaiki .left, #top .kaiki .right{float: none;padding-left: 10px;}
}


#top .award-waku{
    background-color: #e9f5f5;
    padding: 60px 30px;
    max-width: 1100px;
    margin: 30px auto 100px auto;
}

#top .award{
    width: 50%;
}

#top .big-tit{
    color: #e84729;
    font-size: 36px;
    margin: 10px 0px;
}

#top .award .award-name{
    font-size: 22px;
    margin-right: 6px;
    color: #e84729;
    line-height: 1;
}

#top .award .award-name span{
    color: #bf4d96;
}

#top .award li{
    margin-bottom: 20px;
}


#top .touka-bg{
   font-size: 14px;
   padding-bottom: 60px;
}

.spacer {
  width: 100%;
}

#top .shinsain table{
     font-size: 16px;
     line-height: 1.4;
    font-feature-settings: "palt";
}

#top .shinsain th{
    font-weight: normal;
    color: #e84729;
    font-size: 18px;
    display:block;
    margin: 6px 0 2px 0;
}

#top .shinsain td{
    padding-bottom: 10px;
    display:block;
    color: #bf4d96;
    font-size: 18px;
}

#top .shinsain td .nw{
    color: #666;
    font-size: 14px;
}

@media screen and (min-width: 901px) {
    #top .award-waku{display: flex; border-radius: 20px; padding: 60px 70px;}
}

#top .shinsain .caution {
    text-align: left;
    line-height: 1.2;
    margin: 20px 20px 0px 0;
    font-size: 14px;
}

#top .go-entry2 .char-s{
    text-align: center;
}

#top .go-entry2 .exp{
    text-align: left;
    font-size: 16px;
    line-height: 1.5;
    color: #bf4d96;
    border-bottom: 1px solid #bf4d96;
    padding: 10px;
    margin: 10px 0 20px 0;
}

#top .go-entry2 .exp h3{
    color: #e84729;
    margin: 10px 0 0 0;
    font-size: 18px;
}

#top .go-entry2 .exp a{
    text-decoration: underline;
    color: #bf4d96; 
}

@media screen and (max-width: 900px) {
    #top .go-entry2 .exp{font-size: 16px;}
}

#top .past-award-waku{
    background-color: #fff;
    border-radius: 30px;
    padding: 50px 30px;
    text-align: center;
    max-width: 800px;
    margin: 90px auto;
    width: 80%;
    font-size: 18px;
}

#top .past-award-waku ul{
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    
}

#top .past-award-waku li{
    margin: 30px 10px 0 10px;
    font-size: 16px;
}

#top .past-award-waku li img{
    border-radius: 20px;
}


.year-waku{
    margin-top: 70px;
    background-color: #e9f4f3;
    text-align: center;
    padding: 100px 20px 60px 20px;
    font-size: 14px;
    box-shadow: 
    0 5px 7px -5px rgba(0, 0, 0, 0.5) inset,  /* 上側の内側影 */
    0 -5px 7px -5px rgba(0, 0, 0, 0.5) inset; /* 下側の内側影 */
}

.year-waku .footer-hart{
    max-width: 385px;
    width: 90%;
}

.year-waku .kako-title{
    font-size: 20px;
    color: #e84729;
    margin: 10px;
}

ul.kako{
    width: 90%;
    max-width: 920px;
    display: flex;
    justify-content:center;
    flex-wrap: wrap;
    margin: 20px auto;
}

.kako li{
    color: #666;
    background-color: #fff;
    border: 1px solid #aaa;
    padding: 5px 0px 8px;
    line-height: 1;
    width: 70px;
    text-align: center;
    font-size: 16px;
    transition: all 0.3s;
    font-weight: 500;
    margin: 4px;
}

.kako a li:hover{
    background-color: #ddd;
    transition: all 0.3s;
    padding: 5px 0px 8px;
}

.logo-date{
    text-align: center;
    padding: 60px 0 40px 0;
    font-size: 13px;
    line-height: 1.4;
}

.logo-date img{
    width: 220px;
    margin-bottom: 10px;
}




.menu_bottom,
.menu_bottom a{
    color: #fff;
}

.menu_bottom a:hover {color: #F7ADD7;}

.menu_bottom ul{
    display: flex; justify-content: center; flex-wrap: wrap; margin: 10px auto;
    padding: 10px;
    max-width: 800px;
}

.menu_bottom li{
    width: 140px;
    margin: 4px 10px;
    font-size: 15px;
    padding: 8px 12px;
    text-align: center;
    color: #fff;
    background-color: #e84729;
    line-height: 1;
}

.menu_bottom li:hover{
    background-color: #F146A5;
}

.bottom-bar{
    height: 1px;
    background-color: #EEADD2;
    margin: 40px 0 0 0 ;
}

#footer{
	border-top:10px solid #B4D6E4;
	padding: 10px 30px;
	height: 80px;
	position: relative;
	background-color: #fff;
    font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
    color: #333;
}

#footer a{color: #333;}

#footer .w1{
	float: left;
	font-size: 11px;
	color: #5E5E5E;
	line-height: 1.2;
}

#footer .w1 img{
	margin-bottom: 10px;
}

#footer .w2{
	float: left;
	margin-left: 20px;
}

#footer .w2 img{
    margin: 5px;
}

#footer .w3{
	font-size: 12px;
}

#footer .w3 .waku{
	border: 1px solid #999;
	display: inline-block;
	line-height: 1;
	padding: 2px 8px;
	margin: 0 0 10px 10px;
}

#footer .w3 .copyright{
	font-size: 10px;
	color: #b3b3b3;
}

@media screen and (min-width: 931px) {
#footer .w3{
	float: right;
	margin-left: 20px;
	width:600px;
	position: absolute;
	bottom: 10px;
	right: 20px;
	text-align: right;
}
#footer .w3 .copyright{text-align: right;}
}

@media screen and (max-width: 930px) {
	#footer{height: auto;}
	#footer .w1{float: none; margin: 0 auto; text-align: center;}
	#footer .w2{float: none; margin: 20px auto; text-align: center;}
	#footer .w3{float: none; margin: 0 auto; text-align: center; }
}



/*entry ==========================================================*/

#entry{
    line-height: 1.8;
}

.header-nav{
    margin: 70px 0 0 0;
    position: relative;
}

.header-nav .header_date{
    max-width: 360px;
    width: 35%;
    float: right;
}
.header-nav .char{
    margin: 10px 0 0 20px;
    width: 160px;
}

.header-nav,
.header-nav a{
    color: #fff;
    transition: all 0.3s;
}

.header-nav a:hover {color: #F7ADD7;transition: all 0.3s;}

.header-nav ul{
    display: flex; justify-content: flex-start; flex-wrap: wrap; margin: 10px auto;
    padding: 10px;
    max-width: 800px;
    width: calc(100% - 500px);
    position: absolute;
    top:30px;
    left:190px;
}

.header-nav li{
    width: 130px;
    margin: 4px 4px;
    font-size: 14px;
    padding: 6px;
    text-align: center;
    color: #fff;
    background-color: #e84729;
    line-height: 1;
}

.header-nav li:hover{
    background-color: #F146A5;
}


.page-title{
    font-size: 34px;
    color: #e84729;
    text-align: center;
    padding: 30px;
}

.title-exp{
    text-align: center;
}

.header-nav .header_date-sp{
    min-width: 160px;
    width:45%;
    max-width: 260px;
}


@media screen and (max-width: 900px) {
    .header-nav{padding: 0 20px;}
    .header-nav img.char{float: right; min-width:100px; width: 30%; max-width: 160px; margin: 0;}
}

#entry .title-exp .t21{color: #e84729; margin: 10px 0 0 0;}
#entry .title-exp .t18{color: #e84729;}

#entry .title-exp .date{font-size: 21px; color: #e84729;}
#entry .title-exp .date b{font-size: 60px;font-weight: normal;}


@media screen and (max-width: 600px) {
    #entry .title-exp .date{font-size: 16px;}
    #entry .title-exp .date b{font-size: 40px;}
}


.moushikomi{
    margin:0px auto 0 auto;
    padding: 0px 10px;
    text-align: center;
    max-width:1100px;
}

.moushikomi .waku{
    padding: 20px 30px;
    margin: 20px auto;
    text-align: left;
    font-feature-settings: "palt";
    background-color: #eff8f7;
    border-radius: 10px;
    width: calc(90% - 60px);
}

.moushikomi .tit{
    font-size: 22px;
    color: #e84729;
}

.link-underline{
    text-decoration: underline;
}

.moushikomi .link-entry{
    background-color: #e84729;
    width: 250px;
    margin: 10px auto;
    text-align: center;
    padding: 6px;
    line-height: 1;
    font-size: 17px;
    color: #fff;
    text-decoration: none;
    border-radius: 8px;
}

.moushikomi .link-entry:hover{
    opacity: 0.8;
}

.moushikomi .caut{
    font-size: 15px;
    color: #e84729;
    line-height: 1.2;
}

ul.list-kuromaru {
    padding: 10px 0;
    line-height: 1.5;
}
ul.list-kuromaru li {
  position: relative;
  padding-left: 18px;
  padding-bottom: 8px;
}

ul.list-kuromaru li:before {
  content: "●";
  position: absolute;
  left: 0;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  color: #bf4d96;
}

@media screen and (min-width: 901px) {
    .moushikomi{display: flex; justify-content: center;}
    .moushikomi .waku{margin: 20px 10px;max-width: 500px;width: 50%;}
}


#entry .exp-1{
    color: #bf4d96;
}

#entry .exp-1 h1{
    font-size: 29px;
    margin: 26px 0;
    line-height: 1.1;
    color: #e3007f;
    text-align: center;
}

#entry .exp-1 h2{
    font-size: 20px;
    margin: 26px 0 3px 0;
    color: #e84729;
}


ol.list-num{
    list-style-type: decimal;
    padding: 0 0 0 26px;
}

ol.list-num li::marker{
    color: #e3007f;
    font-weight: 500;
}

ol.list-num li{
    line-height: 1.4;
    margin: 14px 0;
}


ol.list-num ul{
    list-style-type: disc;
    padding: 0 0 0 20px;
}



ol.list-num ul li::marker{
    color: #999;
}

ol.list-num ul li{
    line-height: 1.3;
    margin: 10px 0;
}

#entry table.table1{
    border-collapse: collapse;
    margin: 50px 0 0 0;
    line-height: 1.6;
    font-size: 16px;
}

#entry .table1 th,
#entry .table1 td {
    padding: 10px;
}

#entry .table1 tr{
    border-top: solid 1px #E99687;
    border-bottom: solid 1px #E99687;
}

#entry .table1 th{
    white-space: nowrap;
    text-align: center;
    font-weight: normal;
    line-height: 1.2;
    color: #e84729;
    font-size: 18px;
}

@media screen and (max-width: 900px) {
    #entry .table1 .t14{font-size: 12px;}
    #entry .table1 th, #entry .table1 td{width:95%; display:block;text-align: left; font-size: 15px;}
    #entry .table1 th{padding: 16px 10px 0 10px; font-size: 18px;}
}

#entry .step{
    background-color: #e1f2f1;
    text-align: center;
    padding: 80px 30px;
    margin-bottom: 80px;
}

#entry .step .char{
    width: 160px;
}

#entry .step h2{
    font-size: 30px;
    color: #e84729;
    margin: 10px 0;
}

#entry .plate{
    background-color: #fff;
    text-align: left;
    max-width: 1000px;
    padding: 60px 30px;
    width: 90%;
    margin: -40px auto 0 auto;
    border-radius: 30px;
    position: relative;
    z-index: -10;
}

#entry .step .num{
    font-size: 76px;
    font-weight: 800;
    text-align: center;
    line-height: 1;
    color: #e84729;
    margin: 50px 0 0 0;
}

#entry .plate h3{
    font-size: 24px;
    margin: 20px 0 40px 0;
    color: #e84729;
    line-height: 1;
    text-align: center;
}

ul.list-kome {
    padding: 10px 0;
    line-height: 1.5;
}
ul.list-kome li {
  position: relative;
  padding-left: 18px;
  padding-bottom: 8px;
}

ul.list-kome li:before {
  content: "※";
  position: absolute;
  
  left: 0;
}

#entry .step .list-num li::marker{
    color: #333;
}


#entry .step h4{
    font-size: 24px;
    margin: 16px 0 3px 0;
    
}

#entry .step h5{
    font-size: 18px;
    margin: 46px 0 0px 0;
    color: #e84729;
    font-weight: 600;
}



#entry .waku2{
    padding: 14px;
}


#entry .plate ul.list-kuromaru{
    font-size: 16px;
}

#entry .plate ul.list-kuromaru li:before {
    color: #e84729;
}

ul.chobo{
    list-style-type: disc;
    padding: 0 0 0 20px;
    font-size: 15px;
    line-height: 1.3;
}

ul.chobo li::marker{
    color: #999;
}

ul.chobo li{
    line-height: 1.3;
    margin: 10px 0;
}

#entry .entry_map-pc{
    float: right;
    margin-right: 30px;
}


#entry .entry_map-sp{
   margin: 30px auto;
}

#entry table.works-return{
    border-collapse: collapse;
    margin: 16px 0;
}

#entry table.works-return td{
    padding: 4px 10px;
    border: 1px solid #999;
    line-height: 1.3;
    text-align: center;
}

@media screen and (max-width: 900px) {
    #entry table.works-return td{ font-size: 14px;}
}



#entry .link-about a{
    text-decoration: none;
    background-color: #e84729;
    line-height: 1;
    color: #fff;
    text-align: center;
    padding: 8px;
    margin: 5px 10px;
    display: block;
    width: 160px;
    float: left;
    transition: all 0.6s;
    border-radius: 8px;
}

#entry .link-about a:hover{
    transition: all 0.3s;
    opacity: 0.8;
    color: #fff;
}

#entry .form{
    border: 1px solid #e3007f;
    padding: 0 26px 26px 26px;
    max-width: 1100px;
}

#entry .form-waku{
    border: 2px solid #e3007f;
    max-width: 800px;
    margin: 80px auto;
    text-align: center;
    padding: 6px;
}

#entry .form-waku img{
    width: 160px;
    margin-top: -70px;
}

#entry .form ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 600px;
    margin: 16px auto;
}

#entry .form li{
	color: #fff;
  font-size: 16px;
  background: #e3007f;
  padding: 8px 0px;
  transition: .3s;
  width: 160px;
  margin: 10px;
}

#entry .form li:hover{
    background: #EB59AB;
}

#entry .form a{
    transform: scale(1.0);
    transition: all 0.3s;
}

#entry .form a:hover{
    transform: scale(1.1);
    transition: all 0.3s;
}



/*result ==========================================================*/

/*works ==========================================================*/

#works .title-exp{
    text-align: center;
    margin-bottom: 30px;
}

#works ul.page-link-to{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 600px;
    margin: 16px auto;
}

#works .page-link-to li{
    text-align: center;
    color: #fff;
    font-size: 16px;
    background: #e3007f;
    padding: 12px 0px;
    transition: .3s;
    width: 160px;
    margin: 10px;
}

#works .page-link-to li:hover{
    background: #EB59AB;
}

#works .page-link-to a{
    transform: scale(1.0);
    transition: all 0.3s;
}

#works .page-link-to a:hover{
    transform: scale(1.1);
    transition: all 0.3s;
}

#works .page-link-to .spe{
    padding: 6px;
    border-radius: 6px;
}

#works .kugiri-bar{
    margin: 90px auto 50px auto;
}

#works .caution2{
    text-align: center;
    font-size: 14px;
    color: #666;
    margin-top: 30px;
}

#works .category{
    margin: 0px auto;
    padding: 0px 20px 30px 20px;
    text-align: center;
    max-width: 1160px;
}

#works .category-tit{
    font-size: 34px;
    margin-bottom: 30px;
    text-align: center;
    color: #E3007F;
    font-family: 'Noto Serif JP',  "ヒラギノ明朝 ProN W3", 'Times New Roman', "游明朝", YuMincho,  "Hiragino Mincho ProN", "メイリオ", Meiryo, serif;
}


#works .category ul{
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    text-align: center;
}

#works .category li{
    padding: 26px 8px;
    background-color: #fff;
    width: calc((100% - 96px) / 3);
    min-width: 310px;
    margin: 8px;
    line-height: 1.3;
    box-shadow: inset 0 7px 20px 0 rgba(0, 0, 0, .1);
    border-radius: 8px;
}

#works .sho-tit{
    font-size: 20px;
    margin-bottom: 10px;
}

#works .color-gray{
    color: #404040;
}

#works .img-wrap{
    height: 300px;
    vertical-align: middle;
    text-align: center;
    margin: 4px auto;
}

#works .category img{
}

@media screen and (max-width: 1110px) {
    #works .category li{width: calc((100% - 72px) / 2);}
}

@media screen and (max-width: 770px) {
    #works .category li{max-width: 370px; width: 80%;}
    #works .category ul{justify-content: center;}
}

#works .go-pdf{
    margin: 10px;
}

#works .go-pdf a{
    text-decoration: underline;
}

#works .waku-white{
    background-color: #fff;
    padding: 20px 10px;
    border: 1px solid #eee;
    box-shadow: inset 0 7px 20px 0 rgba(0, 0, 0, .1);
    border-radius: 8px;
    max-width: 600px;
    margin: 0 auto;
}

#works img.img-gaishou{
    max-width: 400px;
    width: 100%;
}

#works .cate-color1 img.pc{
    float: left;
}

.spacer2{
    height: 90px;
}


/*about ==========================================================*/


#about .container h2{
    font-size: 21px;
    margin: 26px 0 3px 0;
    font-family: "Noto serif JP";
}

#about table.table1{
    border-collapse: collapse;
    margin: 20px 0 60px 0;
    line-height: 1.6;
    font-size: 18px;
    font-family: "Noto serif JP";
}

#about .table1 th,
#about .table1 td {
    padding: 10px;
}

#about .table1 tr{
    border-bottom: solid 1px #EE85C0;
}

#about .table1 th{
    white-space: nowrap;
    
    font-weight: normal;
    color: #e3007f;
    font-size: 16px;
    vertical-align: top;
}

#about .table1 th.date{
    vertical-align: top;
    color: #999;
    
}

#about .kakomi{
    background-color: #e3007f;
    margin: 2px 0 0 0;
    padding: 4px 10px;
    font-size: 13px;
    color: #fff;
    width:50px;
    line-height: 1;
    text-align: center;
    font-family: "Noto Sans JP";
}

@media screen and (max-width: 900px) {
    #about .table1 {width: 100%;}
    #about .table1 th, #about .table1 td{width:95%; display:block;text-align: left; font-size: 16px;}
    #about .table1 th{padding: 2px 10px 0 10px;}
    #about .table1 th.date{padding: 20px 10px 0 10px;}
}

#about .kiji{
    box-shadow: inset 0 7px 20px 0 rgba(0, 0, 0, .1);
    border-radius: 8px;
    padding: 16px 22px 52px 42px;
    border: 1px solid #ddd;
    line-height: 1.8;
    margin-bottom: 60px;
}

#about .kiji .date{
    text-align: right;
    color: #666;
    font-size: 14px;
    font-family: "Noto serif JP";
    margin-bottom: 30px;
}

#about .kiji .title{
    font-family: "Noto serif JP";
    color: #e3007f;
    font-size: 24px;
    line-height: 1.2;
    margin: 10px 0;
}

#about .kiji a{
    text-decoration: underline;
}

#about .kiji .table-01{
    line-height: 1.4;
}

#about .kiji .table-01 th{
    text-align: justify;
    text-align-last: justify;
    font-weight: normal;
    white-space: nowrap;
    vertical-align: top;
    color: #333;
    font-family: "Noto serif JP";
    padding: 0 0 0 10px;
}

#about .kiji .table-01 td{
    padding: 0 0 8px 8px;
}


@media screen and (max-width: 900px) {
    #about .kiji .table-01 {width: 100%;}
    #about .kiji .table-01 th{padding: 0;color: #e3007f;}
    #about .kiji .table-01 td{padding: 4px 0 20px 0;}
    #about .kiji .table-01 th, #about .kiji .table-01 td{width:95%; display:block; font-size: 16px;text-align: left;
    text-align-last: left;}
}


/*========= ローディング ===============*/



.loader-wrap {
	position: fixed;
	display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: linear-gradient(27deg, rgba(255,255,255,1.00), rgba(203,241,245,1.00)70%),linear-gradient(270deg, rgba(246,253,252,1.00), rgba(191,233,242,1.00)70%);
    padding-bottom: 120px;
    z-index: 9999;
}

#kata .loader-wrap {background: linear-gradient(27deg, rgba(255,255,255,1.00), rgba(255,255,255,1.00)70%),linear-gradient(270deg, rgba(255,255,255,1.00), rgba(255,255,255,1.00)70%);}


.loading-leaf{
    width: 200px;
    left: calc(50% - 100px);
    position: absolute;
    animation: poyopoyo 2s ease-out infinite;
  opacity: 1;
}

.loader {
  text-indent: -9999em;
  overflow: hidden;
  }
  

@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}


/*========= ページトップボタンのためのCSS ===============*/
/*リンクの形状*/
#page-top a{
	display: flex;
	justify-content:center;
	align-items:center;
	background: rgba(229,0,130,0.60);
	border-radius: 10%;
	width: 50px;
	height: 50px;
    margin-bottom: 20px;
	color: #fff;
	text-align: center;
	text-transform: uppercase; 
	text-decoration: none;
	font-size:0.6rem;
	transition:all 0.3s;
    box-shadow: rgba(50, 50, 93, 0.1) 0px 50px 100px -20px, rgba(0, 0, 0, 0.1) 0px 30px 60px -30px, rgba(10, 37, 64, 0.15) 0px -2px 6px 0px inset;

}

#page-top a:hover{
	background: rgba(229,0,130,0.90);;
}

/*リンクを右下に固定*/
#page-top {
	position: fixed;
	right: 30px;
	z-index: 2;
    /*はじめは非表示*/
	opacity: 0;
	transform: translateY(100px);
}

/*　上に上がる動き　*/

#page-top.UpMove{
	animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }
  to {
    opacity: 1;
	transform: translateY(0);
  }
}

/*　下に下がる動き　*/

#page-top.DownMove{
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 1;
	transform: translateY(0);
  }
  to {
  	opacity: 1;
	transform: translateY(100px);
  }
}

