@media screen and (max-width:768px) {
    /*== ブレークポイント =============================================================================*/

    /*PC・SPでの非表示の切り替え--------------------------------------------------------*/
    .pc {
        display: none;
    }

    .sp {
        display: inherit;
    }
    br.pc{
        display: none;
    }
    br.sp{
        display: inline;
    }
    
    
    /*ボタン*/
    .anm01:hover{
        opacity: 1.0;
    }
    /*--------------------------------------------------------------------------------*/
    
    
    
    /*共通マージン設定*/
    .mb1x1 {
        margin-bottom: 1rem !important;
    }
    .mb1x025 {
        margin-bottom: 0.5rem !important;
    }
    .mb1x05 {
        margin-bottom: 0.5rem !important;
    }
    .mb1x1_5 {
        margin-bottom: 1.5rem !important;
    }

    .mb1x2 {
        margin-bottom: 2rem !important;
    }
    .mb1x3 {
        margin-bottom: 3rem !important;
    }
    .mb1x4 {
        margin-bottom: 4rem !important;
    }


    .pb1x1 {
        padding-bottom: 1rem !important;
    }
    .pb1x2 {
        padding-bottom: 2rem !important;
    }
    .pb1x3 {
        padding-bottom: 3rem !important;
    }
    .pb1x4 {
        padding-bottom: 4rem !important;
    }


    .pt1x1 {
        padding-top: 1rem !important;
    }
    .pt1x2 {
        padding-top: 2rem !important;
    }
    .pt1x3 {
        padding-top: 3rem !important;
    }
    .pt1x4_5 {
        padding-top: 4.5rem !important;
    }
    
    
    

    /* 共通 width 設定*/
    .widthsize01{
        width: 95.8vw;
        margin: 0 auto;
    }
    .widthsize02{
        width: 91.6vw;
        margin: 0 auto;
    }
    .widthsize03{
        width: 91.6vw;
        margin: 0 auto;
    }
    .widthsize04{
        width: 78.6vw;
        margin: 0 auto;
    }
    .widthsize05{
        width: 91.6vw;
        margin: 0 auto;
    }

    /* 共通文字サイズ設定*/
    html{
        font-size: 4.2vw;
        min-width: auto;
        overflow-x: hidden;
        width: 100%;
    }
    body{
        overflow-x: hidden;
        width: 100%;
        min-width: auto;
    }

    .text{
        margin: 0 auto;
        text-align: justify;
        line-height: 1.5rem;
        letter-spacing: 0.04rem;
    }
    .text p{
        margin-bottom: 0.7rem;
    }
    .text p:last-of-type{
        margin-bottom: 0;
    }

    /*大きい文字だけを表示させるボックス*/
    .text_large{
        text-align: center;
        font-size: 1.5rem;
        font-weight: bold;
        -webkit-font-feature-settings: "palt";
        font-feature-settings: "palt";
        text-decoration: underline;
        line-height: 1.5em;
    }

    .midashi01{
        font-size: 3rem;
        font-weight: bold;
        text-align: center;
        margin:auto;
        line-height: 1.3em;
    }

    .imagebox01{

    }
    .imagebox01 .img{
        margin-bottom: 1rem;
        border-radius: 50%;
        overflow: hidden;
    }
    .imagebox01 .img.square{
        border-radius: 0;
    }
    .imagebox01 .hx{
        background: #E6E6E6;
        line-height: 1.5em;
        text-align: justify;
        padding: 0.5rem 0.5rem 0.35rem;
        font-weight: bold;
        margin-bottom: 1rem;
    }
    .imagebox01 p a{
        color: #6f30d8;
        text-decoration: underline;
    }



    .flexbox01{
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .flexbox01 > div{
        width:100%;
    }
    
    .flexbox01 .imagebox01{
        width:49%;
        margin-bottom: 2.1vw;
    }
    .flexbox01 .imagebox01:nth-last-of-type(1),
    .flexbox01 .imagebox01:nth-last-of-type(2){
        margin-bottom: 0;
    }
    .flexbox01 .imagebox01 .img{

    }
    .flexbox01 .imagebox01 .hx{

    }
    .flexbox01 .imagebox01 .text{

    }


    .flexbox02{
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .flexbox02 .imagebox01{
        width: 85%;
        margin: auto;
        margin-bottom: 2rem;
    }
    .flexbox02 .conts{
        width:100%;
        margin-bottom: 0;
    }

    .flexbox03{

    }
    .flexbox03 .imagebox01{
        width:100%;
        margin-bottom: 2rem;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .flexbox03 .imagebox01 .hx{
        width:100%;
        margin-bottom: 1rem;
    }
    .flexbox03 .imagebox01 .img{
        width:25%;
    }
    .flexbox03 .imagebox01 .text{
        width:70%;
    }
    .flexbox02 .imagebox01:nth-last-of-type(1){
        margin-bottom: 0;
    }
    
    .flexbox04{
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        flex-wrap: wrap;

    }


    .dl01{
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        margin-bottom: 1rem;
    }
    .dl01 dt,
    .dl01 dd{
        width: 49.5%;
        margin-bottom: 0.5rem;
        border-bottom: 1px solid #B2B2B2;
        padding: 0.5rem;
    }
    .dl01 dt{
        width: 30%;
        border-left: 0.25rem solid #B2B2B2;
        /*border-right: 1px solid #E6E6E6;*/
        /*background: #E6E6E6;*/
    }
    .dl01 dd{
        width: 69%;
    }

    .copyright{
        padding: 1.2em 0 1em;
        text-align: center;
        font-size: 0.6rem;

    }

    .common_hx{
    }
    .common_hx .triangle_under{

    }
    .common_hx .hx_text{
        font-size: 1.25rem;
    }
    
    /*----------------------------------------------------------------------------*/

    .header {
        height: 58.5vw;
        background: url(../img/header_bg.png) top center no-repeat;
        background-position-x: -77vw;
        background-size: cover;
        overflow: visible;
    }
    .header_inr01 {
        width: 98%;
        height: auto;
        position: relative;
        z-index: 1000;
        top: 4vw;
    }
    .header_inr01 .header_tilte {
        
    }
    /*----------------------------------------------------------------------------*/
    .about {
    }
    .about .flexbox01 {
        margin: auto;
        width: 95.8vw;
    }
    .about .image01 {
        margin: auto;
        width: 27vw;
    }
    .about .image01 img {
    }
    .about .conts {
        width: 100%;
        padding-top: 1.55rem;
    }
    .about .image02 {
        width: 70vw;
        margin: auto;
        margin-bottom: 1.92em;
    }
    .about .image02 img {
    }
    .about .text {
        text-align: center;
        font-weight: bold;
        letter-spacing: 0.048em;
        line-height: 2em;
    }
    .about br {
    }
    
    /*----------------------------------------------------------------------------*/

    .info{
        background: #fff url(../img/info_bg.png) center top no-repeat;
        width: 100%;
        position: relative;
        background-size: 200%;
    }

    .info .inr{

    }
    .info a{
        display: block;
        margin-bottom: 1rem;
    }
    .info a:last-of-type {
        margin-bottom: 0;
    }

    .info .box {
        padding: 1rem 0.4rem 0.4rem;
        font-size: 1rem;
        width: 100%;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        align-items: center;
        
    }
    

    .info .box .image {
        margin-bottom: 0;
        width: 30%;
    }
    .info .box img {
        transition: .5s ;
        transform: rotateZ( 0deg ) ;
    }
    .info .box .text {
        margin-bottom: 0;
        line-height: 1.5em;
        width: 62%;
    }
    .info .box .text-center{
        width: 100%;
        margin-top: 0.5rem;
    }
    /*----------------------------------------------------------------------------*/

    .photo .inr {
        background: #eaf7ff;
    }
    .photo > .image {
        width: 50vw;
        margin-bottom: -37.6vw;
    }
    .photo .image img {
        transition: 0.5s;
    }
    .photo .image img:hover {

    }
    .photo .flexbox01 {
        margin-top: 22vw;
    }
    .photo .flexbox01 img:nth-of-type(1) {
        width: 75.5%;
        margin-bottom: 0.7rem;
    }
    .photo .flexbox01 img:nth-of-type(2) {
        width: 22.5%;
        margin-bottom: 0.7rem;
    }
    .photo .flexbox01 img:nth-of-type(3) {
        width: 100%;
    }

    .photo .flexbox02 {

    }
    .photo .flexbox02 .image.big{
        width: 100%;
        height: auto;
    }
    .photo .flexbox02 .image.small{
        width: 47.5%;
        height: auto;
    }
    .photo .flexbox02 .image.small:nth-last-of-type(1){
        margin-bottom: 0;
    }
    .photo .flexbox02 .image.small:nth-last-of-type(2),
    .photo .flexbox02 .image.small:nth-last-of-type(3){
        margin-bottom: 1rem;
    }
    /*----------------------------------------------------------------------------*/

    .shop {
    }
    .shop .flexbox01 {
        padding: 1.5rem;
        background: #f3f3f3;
        margin-bottom: 1.5rem;
    }
    .shop .flexbox01:last-of-type {
        margin-bottom: 0;
    }
    .shop .flexbox01 .image {
        width: 100%;
        margin-bottom: 0.5rem;
    }
    .shop img {
    }
    .shop .flexbox01 .conts {
        margin-top: 0.5rem;
        width: 100%;
    }
    .shop .flexbox01 .name {
        padding-bottom: 0.65rem;
        margin-bottom: 0.8rem;
    }
    .shop .flexbox01 .text {
        font-size: 1rem;
        line-height: 1.5em;
    }
    
    /*----------------------------------------------------------------------------*/
    .coupon{

    }

    .coupon .conts{

    }

    .coupon .hx{
        padding: 0.25em 0.25em 0.125em;
        border: 2px solid #fff;
        display: inline-block;
    }

    .coupon .box {
        padding: 1rem;
    }

    .coupon .box .flexbox01 > div{
        height: auto;
    }
    .coupon .box .flexbox01 > div:nth-of-type(1){
        padding-right: 0;
        padding-bottom: 2rem;
        border-right: none;
        border-bottom: #404040 solid 2px;
    }
    .coupon .box .flexbox01 > div:nth-of-type(2){
        padding-left: 0;
        padding-top: 2rem;
    }
    .coupon .box .coupon_num {
        border: 2px solid #ff2c2c;
        padding: 1em 1em 0.78em;
        text-align: center;
    }
    .coupon .box .pc{
        
    }
    /*----------------------------------------------------------------------------*/

    .osusume {

    }
    .osusume.pb1x2{
    }
    .osusume.pt1x2{
    }
    .osusume .hx{
        background-size: 75%;
        padding: 1.5rem 0 1rem
    }
    .osusume .hx span{
        padding-bottom: 0.2rem;
    }

    .osusume .hx span:last-of-type{

    }

    .osusume .hx .hx_text{
        margin-bottom: 0.5rem;
    }

    .osusume .hx.osusume .hx div {
    }
    
    .category_btns .box {
        width: 100%;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        background: #fff;
        border-radius: 0.25rem;
        overflow: hidden;
        padding: 0.5rem;
        margin-bottom: 1rem;
    }
    .category_btns .box .image {
        width: 25vw;
        height: 25vw;
    }
    .category_btns .box img {
    }
    .category_btns .box .links {
        width: 70.25%;
        text-align: left;
        text-align-last: left;
        color: #69542f;
    }
    .category_btns .box .links .title {
        margin-top: 0.5rem;
        margin-bottom: 0.65rem;
        padding-bottom: 0.55rem;
    }
    .category_btns .box .links .title .small{
        display: block;
        margin-left: 0.35rem;
        margin-top: 0.7em;
    }
    .category_btns .box .links .title:hover{
    }


    .category_btns .box .title a {
    }
    .category_btns .box ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .category_btns .box li {
        /*display: flex;*/
        font-size: 1rem;
        width: 48.5%;
        margin-bottom: 0.5rem;
        line-height: 1.35rem;
    }
    .category_btns .box li:only-of-type {
        width: 100%;
    }
    .category_btns .box li:hover{
    }
    .category_btns .box li a::before {
        margin-right: 0rem;
        font-size: 0.6rem;
        margin-top: -0.11em;
    }
    .category_btns .box li a {
        text-indent: -0.6em;
        padding: 0.55em 0.5em 0.3em;
        padding-left: 1.8em;
        height: 100%;
    }


    /*----------------------------------------------------------------------------*/
    .block_logo{

    }
    .block_logo .logo{
        margin: auto;
        width: 45vw;
        font-size: 1rem;
        text-align: justify;
        text-align-last: justify;
    }
    .block_logo .logo img{
        border-bottom: 2px solid #555555;
        padding-bottom: 0.8rem;
        margin-bottom: 0.9rem;
    }

    /*----------------------------------------------------------------------------*/

    .main {
        background: #fff;
    }

    .main .hx {
        background-size: 45vw;
        text-align: center;
        padding: 1.3rem 1.2rem 1rem;
        color: #fff;
    }
    .main .hx .big{
        font-size: 1.25rem;
        font-weight: bold;
        margin-bottom: 0.45rem;
        padding-bottom: 0.25rem;
        border-bottom: 2px solid #fff;
        display: inline-block;
        line-height: 1.3em;
    }
    .main .hx .small{

    }
    
    
    .box_item {
        margin-bottom: 3rem;
    }
    .box_item:last-of-type{

    }
    .box_item a {
        display: inline;
    }
    .box_item .item_img {
        width: 100%;
        height: auto;
        margin-bottom: 1rem;
    }
    .box_item .item_img .deco {
        width: 30vw;
    }
    .box_item .item_img .image {

    }


    .box_item .text {
        width: 100%;
    }
    .box_item .maker {
        padding: 0.5rem 0.5rem 0.3rem;
        margin-bottom: 0.7rem;
    }
    .box_item .name {

    }
    .box_item .comment {

    }
    .btn_item{

    }

    .box_item .square_btn {

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

    .box_pagemove{
        
    }
    .box_pagemove a{
    }
    .box_pagemove .img01{
        width: 70vw;
    }

    .box_pagemove .linktext{
        font-size: 1rem;
        margin: 1rem;
    }
    .box_pagemove .linktext:hover{

    }

    /*== ブレークポイント =============================================================================*/
}
